在Objective-C中,头文件和实现文件中的导入有什么区别?

时间:2017-07-12 02:18:37

标签: objective-c import header-files

我很想学习Objective-C。 头文件最像是一个公共接口,实现文件有私有接口。

但我很困惑,选择导入另一个头文件的位置。

2 个答案:

答案 0 :(得分:5)

  

但我对选择导入位置感到困惑。

如果且仅当公共接口需要您导入的内容时,例如导入的类型在公共方法的签名中使用,然后在接口文件中导入。

如果您要导入的内容仅在实现中内部,则在实现文件中导入。

以上是一般原则,不受Objective-C约束或限制。

答案 1 :(得分:0)

#import不会导致交叉编译在Objective-C中,#import被用作#include指令的改进版本。另外,#import确定一个文件只能导入一次,这使得你在递归包含时不会出现问题@class文件中一般使用的类需要在使用M文件时声明变量的类实例或者需要使用#import @ class是告诉编译器有这样一个类,因为类的定义为什么不知道@ class一般在第一个文件中使用声明需要在变量中声明一个变量的实例M文件或需要使用#import“”表示他们创建文件,用当前目录中的第一个查找,如果找不到其他位置查找,“和”是相对的一个是自己的文件之一created是一个系统文件