Query: pch 文件 干嘛的?
百度百科:pre-Compile Header(预编译头文件),由编译器在建立工程时自动生成; 其中存放有工程中已经编译的部分代码; 在以后建立工程时不再重新编译这些代码。
经过实践后我的认知:
pch文件经过加载后里面的内容会预先执行。
Example:pch文件里面引用了<UIKit/UIKit.h>头文件后,我新建立的类如果需要引入UIKit的头文件就可以不必import了,可以编译可以运行。
于是可以避免了不同类的重复添加。
从性能方面讲:
提高编译速度.一般地,编译器以文件为单位编译,如果修改了一工程中的一个文件则所有文件都要重新编译,包括头文件里的所有东西(eg.Macro宏,Preprocessor预处理),而VC程序中,这些头文件中所包括的东西往往是非常大的,编译之将占很长的时间.但它们又不常被修改,是较稳定的,为单独的一个小文件而重新编译整个工程的所有文件导致编译效率下降,因此引入了.PCH文件.
Xcode 7 建立 PCH
步骤:
- File –> new –> File –> Other –> PCH File –> 文件名可以随便取 –> Save
- 设置pch文件的路径: targets -> BuildSetting -> Prefix Header -> 设置$(SRCROOT)/文件在Finder的路径