在Xcode6之前,创建一个新工程xcode会在Supporting files文件夹下面自动创建一个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问。是一个预编译文件。
首先说一下pch的作用:
1.存放一些全局的宏(整个项目中都用得上的宏)
2.用来包含一些全部的头文件(整个项目中都用得上的头文件)
3.能自动打开或者关闭日志输出功能
Xcode6 之后新建.pch 文件 需要设置预编译,
Build Settings 搜索 prefix header (搜索不到的话,搜索区域选择 All)
Precompile Prefix Header 为是否设置预编译 (需要设置为YES,因为.pch为预编译文件,需要在程序运行的提前编译,否则.pch中的内容其他文件无法获取)
Prefix Header 为.pch的地址 通过show in finder 找到地址,直接拖进去,一般留最后两个(工程名/文件名.pch)
.pch的注意点
1.由于.pch是预编译文件,所以对于混合开发就会有问题,其他语言不识别oc的语言就会报错
解决办法:#ifdef __OBJC__
#import "UIView+HJHExtension.h"
#endif
加入 这句判断 如果是oc 就编译
2. .pch预编译 如果工程太大会导致编译时间太长,和可能编译时间太长苹果拒绝,而且用户体验不好,所以在.h文件 中最好使用 @class 最好不要倒入头文件 这样会减少编译时间
网友评论