将PrefixHeader.pch添加到Xcode项目

本文详细介绍了PrefixHeader.pch文件的作用及其在Xcode中的使用方式。pch文件允许开发者存放常用的头文件,使得这些文件能够在整个工程中被自动引用,提高了编程效率。文中还探讨了Apple为何在Xcode 6中移除了自动创建pch文件的功能,并提供了在Xcode 6及以后版本中手动添加pch文件的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PrefixHeader.pch是什么?

.pch是全局引用文件,在其中添加需要全局引用的常量和设置。


屏幕快照 2015-10-30 下午6.22.51.png

PrefixHeader.pch在Xcode之前是默认添加

在Xcode6之前,新建一个工程的时候,系统会帮我们自动新建一个以工程名为名字的pch (precompile header)文件,在开发过程中,可以将那些整个工程都广泛使用的头文件包含在该文件下,编译器就会自动的将pch文件中的头文件添加到所有的源文件中去,这样在需要使用相关类的时候不需要使用import就可以直接使用头文件中的内容,很大程度上带来了编程的便利性。

为什么Apple在Xcode6中默认不再创建pch

关于pch的得与失,stackoverflow上有段话讲的比较透彻:
[http://stackoverflow.com/questions/24158648/why-isnt-projectname-prefix-pch-created-automatically-in-xcode-6]

Xcode 6去掉Precompile Prefix Header的主要原因在于:

去掉自动导入的系统框架类库的头文件,可以提高原文件的复用性,便于迁移。

臃肿的Prefix Header会大大增加Build Time。

为了取代在Prefix Header中自动导入的框架,可以在每一个需要导入系统框架的文件中通过@import来手动导入,当然要确保Build Settings中的Enable Modules是打开的。
如果在Prefix Header中导入了,那么我们在工程的每一个文件中可以免费获得使用的权利,而无需手动在每一个.h/.m文件中导入。该文件确有其方便之处。

Xcode6之后添加PrefixHeader.pch方法

在工程中增加一个pch文件,命名还是按照Xcode 5的模板比较好:工程名-Prefix.pch,例如a-Prefx.pch


屏幕快照 2015-10-30 下午6.35.41.png

屏幕快照 2015-10-30 下午6.36.00.png

屏幕快照 2015-10-30 下午6.40.31.png

这样修改的路径只能在这台电脑上编译通过,想要在其他电脑上编译通过需要将第一遍工程名之前的路径替换成工程的相对路径$(SRCROOT)

也就是将:

/Users/Zym/Desktop/LoveLimitFree/LoveLimitFree/PrefixHeader.pch

修改为

$(SRCROOT)/LoveLimitFree/PrefixHeader.pch


将Precompile Prefix Header为YES,预编译后的pch文件会被缓存起来,可以提高编译速度




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值