Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想知道是否可以导入头文件,但不包含该头文件中包含的任何头文件。
假设我有导入 B 类的 A 类。在 B 类中,我导入 C 类。有什么办法可以从 A 类中隐藏 C 类?
不,你不能这样做:一旦你导入一个文件,它的所有导入也会进来。
但是,如果您只想使用ClassA,则可以在自己的标头中前向声明ClassA它,而不是导入的标头:
ClassA
@class ClassA;
现在可以制作 type 的变量ClassA*,ClassA*用作返回类型或参数类型等。同时,ClassA不会加载 's header 的依赖项。
ClassA*
一般而言,减少在标头中导入的标头数量是一个好主意,例如将与实现(而不是接口)相关的导入移动到 .m 文件中,并使用类扩展。