PCH(Prefix Header File)文件就是一个头文件。PCH文件的特点是: 项目中的所有其他代码文件无需显示导入该PCH文件, 默认就都可以访问(其他文件无需手动#import该 pch文件就能使用),也就是说,pch文件是全局的。
使用pch文件的好处:
使用pch文件的缺点:
由pch文件的特点可知,在项目编译是时,每编译一个文件都要添加pch文件,所以会非常消耗编译器性能,所以,从Xcode6.1开始,创建工程时默认不再创建pch文件。有时在项目开发中pch文件的好处还是很明显的,所以就需要我们自己创建。创建方法如下:
首先,Command+N,打开新建文件窗口:ios->other->PCH file,创建一个pch文件,添加需要引入的头文件名:
? 其次,修改工程配置文件,将刚刚创建的PCH file的路径添加到building setting中,操作如下:选中项目 -> Build Setting -> All -> 搜索"prefix head" -> 修改Prefix Header的内容为:
"$(SRCROOT)/$(PRODUCT_NAME)/PrefixHeader.pch"
(如果有问题,换下面的方式,可能会与中文有关)
"$(SRCROOT)/对应的文件夹名/PrefixHeader.pch"?
至此,大功告成,编译一遍,新添加的pch文件就可以正常使用了^_^。
pch的参考代码如下:
#ifndef PrefixHeader_pch
#define PrefixHeader_pch
// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.
// 判断如果是OC文件才引入这些宏, 如果是普通C语言文件则不引入。否则当在项目中添加C语言文件时报错。
#ifdef __OBJC__
#define Name @"Steve"
#ifdef DEBUG
#define SteveZLog(...) NSLog(__VA_ARGS__)
#else
#define SteveZLog(...)
#endif
#endif
#endif /* PrefixHeader_pch */
原文:http://www.cnblogs.com/xishuidongliu/p/4951176.html