0

假设我有一个以文件命名的框架A.framework作为A.h主要导入。客户端应用程序使用此框架的标准方式是:

#import <A/A.h>

假设现在存在另一个框架B.framework,我想在我的中包含/覆盖/实现它的功能,A.framework以便客户端应用程序实际上可以取消链接B.framework并且仅链接到A.framework以获得所有B.framework功能。换句话说,我在B.framework里面实现了所有的功能,A.framework并且有一个文件可以通过

#import <A/B.h>

这样,如果用户将所有#import <B/B.h>调用替换为#import <A/B.h>,他们将获得 的所有B.framework功能。

我的问题是:我可以让用户在B.framework不替换所有#import <B/B.h>呼叫的情况下取消链接,#import <A/B.h>并以某种方式从其中#import <B/B.h>导入这些呼叫A.framework吗?

4

1 回答 1

1

就像你描述的那样,是的。如果您的所有课程/方法/等。是里面A/B.h的,将从中检索B/B.h,B.framework 不再需要,只要 A.framework 不直接引用 B.framework ......如果这有意义......

这样想:

不允许

如果您在这种情况下取​​消链接 B.framework,当您尝试在 Bh 中执行任何操作时会出现错误,因为 A.framework 中的 Bh 文件需要 B.framework 才能运行。

但是,如果它看起来像这样:

允许

因此,您的 B.framework 的基本组件实际上A.framework 内部(您将它们合并)即 A.framework从不引用<B/*>,您可以这样做!

希望对您有所帮助。

于 2013-04-28T02:44:16.060 回答