参考文档 http://blog.csdn.net/crazyzhang1990/article/details/44243343
红色部分为本人自己补充注意事项
在Xcode6之前,创建一个新工程xcode会在Supporting files文件夹下面自动创建一个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问。是一个预编译文件。
首先说一下pch的作用:
1.存放一些全局的宏(整个项目中都用得上的宏)
2.用来包含一些全部的头文件(整个项目中都用得上的头文件)
3.能自动打开或者关闭日志输出功能
虽然用了很久的Xcode6但是项目是xcode5之前创建好的,所以一开始并没有发现缺少了这个pch文件。苹果为什么要这么做呢,原因可能是因为大家把大量的头文件和宏定义放到pch里边,导致编译时间过长。苹果去掉他可能是要加快编译时间增加用户体验。虽然失去了编程的便利性。不得不佩服苹果的以用户为中心的思考方式。更详细的讨论可以去Stackoverflow上去看http://stackoverflow.com/questions/24158648/why-isnt-projectname-prefix-pch-created-automatically-in-xcode-6。
如何在Xcode中添加pch文件:
Command+N,打开新建文件窗口:ios->other->PCH file,创建一个pch文件
2,将building setting中的precompile header选项添加路径 :添加“$(SRCROOT)/项目名称/pch文件名”
添加之前把你建的pch文件Show in Finder 一下看看你的PCH文件所在位置
$(SRCROOT)这个代表定位到你的工程文件,后面的斜杠是(PrefixPchTest/PrefixHeader.pch) 子文件/pch文件
例如:$(SRCROOT)/PrefixPchTest/PrefixHeader.pch(PrefixHeader.pch在工程文件下的一个名为PrefixPchTest文件夹下)
(或者$(SRCROOT)/PrefixHeader.pch (而PrefixHeader.pch在工程文件下面)
可以了,编译一下程序,如果有错误检查一下添加的路径是否正确。
3,将Precompile Prefix Header为YES,预编译后的pch文件会被缓存起来,可以提高编译速度