PCH 一看就会

PCH文件的作用:

Xcode会提前编译PCH文件,并且在每个文件中都拷贝PCH文件的内容。利用这一特点,我们可以在PCH文件里存放一些公用的宏,存放一些头文件,以及自定义一些有用的宏

PCH文件的创建:

File -> New -> File... -> other -> PCH文件

奋斗的七月
奋斗的七月

然后就会出现

奋斗的七月
  • PCH文件配置: Build Settings -> 找到Apple LLVM…(或者搜索prefix) -> 将Precompile Prefix Header设置为YES
    接下来需要在Prefix Header中写入PCH文件的路径,注意默认PCH文件这个路径与项目文件处于同一层级,也就是说Xcode从项目文件的目录开始查找PCH文件,所以在这里只需要写项目名称/文件名称.pch而不用写全路径。 $(SRCROOT)/SchoolMeal/ZSPBase_PrefixHeader.pch
    其中SchoolMeal为项目名称,ZSPBase_PrefixHeader.pch为pct文件名

或者直接拖进去(如下图所示)

奋斗的七月
奋斗的七月
pch正确的使用方式

pch文件作为苹果早期项目自建的文件,肯定是有其优势的。事实上,pch不但不会降低编译速度,总体上反而会提高编译速度。预编译后的头文件会被缓存起来,再次编译的时候就不需要重新编译pch文件中导入的内容,从而提高编译速度。

正确的使用方式:
不要把所有的宏定义都放到平常文件中,尤其是共用性较小的宏定义;
将公用性高的头文件放到pch中,比如fundation框架等;
(整洁性原则)将零散的宏定义专门创建一个头文件来放置,再导入到pch中,方便查看和修改;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,280评论 19 139
  • 相信很多iOS开发者都用过pch文件,在Xcode6之前,创建一个新工程Xcode会在Supporting fil...
    没有昵称的昵称没有阅读 7,975评论 2 17
  • 启动界面的设置 启动界面由Xcode5的图片文件到Xcode6的xib文件到Xcode7的storyboard文件...
    ForeverYoung21阅读 1,481评论 0 7
  • 最近在开始一个新项目,需要设置的东西很多都忘记了,对于我这种支付宝密码都能忘记的人,还是记录一下比较好,那我们首先...
    GreenC阅读 851评论 0 2
  • 有的时候,家长说“你交的这都是什么朋友?都是一群狐朋狗友。”在家长的眼里,那些说成是狐朋狗友的人,都陪我度过了一个...
    忆花凉阅读 311评论 1 0