iOS Header File 和 PCH File的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Lucky_Deng/article/details/58601924

注意:个人理解,如有错误请指正


首先说说二者的区别:PCH File :里面默认的是使用在整个项目中的可以访问(全局变量),一般存放一些全局变量(整个项目都用得上的宏),包括在所有编译单元中包含的任何系统框架和库,头文件等等,该文件不需要导入PCH File头文件就可以直接使用。Xcode 6去掉Precompile Prefix Header 的主要原因是:(1):去掉自动导入的系统框架类库的头文件。可以提高原文件的复用性,便于迁移 

                                                                              (2):一个肥胖无比的Prefix Header 会大大增加编译时间。

例如:在Header File里面定义一个宏,那么只要在某个类导入Head File头文件,则就可以使用这个宏,而如果是PCH File,就不需要导入它的头文件就可以直接使用。

                                        Header File: 可以看成是局部变量,可以把一些头文件放入Header File里面,需要再把 Header File头文件的文件名导入到类中,才能使用头文件中的类


下面附上一些头文件的图示供大家参考:

上面是头文件的样式

p


PCH文件有些注意事项  配置PCH Field:-->Precompile Prefix Header设置为YES(将Precompile Prefix Header为YES,预编译后的pch文件会被缓存起来,可以提高编译速度);

-->Prefix Header右边双击,添加刚PCH Field的工程路径,路径格式为:“$(SRCROOT)/项目名称/pch文件名” ,其中"$(SRCROOT)"是工程根目录的意思, 然后Command+B编译工程, 出错检验一下添加的路径是否有错 


如有错误,欢迎指正,谢谢

猜你喜欢

转载自blog.csdn.net/Lucky_Deng/article/details/58601924