Xcode6中添加-Prefix.pch文件

来源:互联网 发布:绝地求生多核优化 编辑:程序博客网 时间:2024/06/05 09:34

Xcode6中添加-Prefix.pch文件

   在Xcode6之前,系统自动带有-Prefix.pch文件 我们可以在其中导入一些在项目其他类中经常需要导入的文件,Xcode6之后,系统没有自动生成-Prefix.pch文件这一说法了,所以,需要我们自己创建

   我们如何在Xcode6中添加pch(Precompile Prefix Header)?

1,打开新建文件窗口:ios->other->PCH file,创建一个pch文件:“工程名-Prefix.pch”:

2.然后在building setting中搜索prefix header  找到prefix header 选项的路径添加“$(SRCROOT)/项目名称/pch文件名”(例如:$(SRCROOT)/JustTest/JustTest-Prefix.pch)

可以了,编译一下程序,如果有错误检查一下添加的路径是否正确。

@ 取消的原因:<喎�"http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD48cD4gICAgICBTdGFja292ZXJmbG93yc/T0NK7uPbIy7bUtMu1xL3iys3Kx9Xi0fm1xKO6PGJyIC8+ICAgICAgIEkgc3VzcGVjdCBiZWNhdXNlIG9mIG1vZHVsZXMsIHdoaWNoIHJlbW92ZSB0aGUgbmVlZCBmb3IgdGhlIDxjb2RlPiAjaW1wb3J0IDxDb2NvYS9Db2NvYS5oPi48L2NvZGU+PGJyIC8+ICAgICAgIEFzIHRvIHdoZXJlIHRvIHB1dCBjb2RlIHRoYXQgeW91IHdvdWxkIHB1dCBpbiBhIHByZWZpeCBoZWFkZXIsIHRoZXJlIGlzIG5vIGNvZGUgeW91IHNob3VsZCBwdXQgaW4gYSBwcmVmaXggaGVhZGVyLiBQdXQgeW91ciBpbXBvcnRzIGludG8gdGhlIGZpbGVzIHRoYXQgbmVlZCB0aGVtLiBQdXQgeW91ciBkZWZpbml0aW9ucyBpbnRvIHRoZWlyIG93biBmaWxlcy4gUHV0IHlvdXIgbWFjcm9zLi4ubm93aGVyZS4gU3RvcCB3cml0aW5nIG1hY3JvcyB1bmxlc3MgdGhlcmUgaXMgbm8gb3RoZXIgd2F5IChzdWNoIGFzIHdoZW4geW91IG5lZWQgX19GSUxFX18pLiBJZiB5b3UgZG8gbmVlZCBtYWNyb3MsIHB1dCB0aGVtIGluIGEgaGVhZGVyIGFuZCBpbmNsdWRlIGl0LjxiciAvPiAgICAgICBUaGUgcHJlZml4IGhlYWRlciB3YXMgbmVjZXNzYXJ5IGZvciB0aGluZ3MgdGhhdCBhcmUgaHVnZSBhbmQgdXNlZCBieSBuZWFybHkgZXZlcnl0aGluZyBpbiB0aGUgd2hvbGUgc3lzdGVtIChsaWtlIEZvdW5kYXRpb24uaCkuIElmIHlvdSBoYXZlIHNvbWV0aGluZyB0aGF0IGh1Z2UgYW5kIHViaXF1aXRvdXMsIHlvdSBzaG91bGQgcmV0aGluayB5b3VyIGFyY2hpdGVjdHVyZS4gUHJlZml4IGhlYWRlcnMgbWFrZSBjb2RlIHJldXNlIGhhcmQsIGFuZCBpbnRyb2R1Y2Ugc3VidGxlIGJ1aWxkIHByb2JsZW1zIGlmIGFueSBvZiB0aGUgZmlsZXMgbGlzdGVkIGNhbiBjaGFuZ2UuIEF2b2lkIHRoZW0gdW50aWwgeW91IGhhdmUgYSBzZXJpb3VzIGJ1aWxkIHRpbWUgcHJvYmxlbSB0aGF0IHlvdSBjYW4gZGVtb25zdHJhdGUgaXMgZHJhbWF0aWNhbGx5IGltcHJvdmVkIHdpdGggYSBwcmVmaXggaGVhZGVyLjxiciAvPiAgICAgICBJbiB0aGF0IGNhc2UgeW91IGNhbiBjcmVhdGUgb25lIGFuZCBwYXNzIGl0IGludG8gY2xhbmcsIGJ1dCBpdA=="s incredibly rare that it's a good idea.


翻译过来 大致就是说 也许是因为组件单一模块的原因,所以 放弃了对的import
你不应该在你的prefix代码中放入任何的代码,把他们放在你确实需要放入的文件中。把你的定义放到属于他们的文件中。 尽量不要使用宏定义(define)。。除非是非不得已的时候,(这里 插一句 不使用宏定义的原因是 宏定义是在预编译的时候处理的 因此 当你修改宏定义的时候 会导致大量的代码被重新编译 另外 宏定义存在许多潜在的bug 是因为在预编译的时候,他并不会被发觉到的)。如果你确实 在被逼无奈需要使用宏定义,把他们放在需要被include的头文件中,而不是放在prefix文件中。
prefix header文件是被那些大量使用 以及 几乎所有系统中的文件都需要被使用(例如 Foundation.h)。如果 你有一些东西大量存在,你应该重新思考你的架构问题你。因为 当你修改你prefix header的一些代码的时候,prefix header导致整个项目重新编译,这让你的代码重用变得困难,并且导致一些琐碎build的问题。所以 不要去使用prefix header 这样可以避免你大量的重新编译整个项目的时间 
如果你仍然想要使用预编译,你可以创建一个新的并且传递给编译器的前段,这种方法很少见(我没用过),但确实是一个不错的方法
0 0