美文网首页iOS开发
Xcode中如何添加pch文件

Xcode中如何添加pch文件

作者: zfl1024 | 来源:发表于2017-03-14 16:27 被阅读20次

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

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

As to where to put code that you would put in a prefix header, there is no code you should put in a prefix header. Put your imports into the files that need them. Put your definitions into their own files. Put your macros...nowhere. Stop writing macros unless there is no other way (such as when you need __FILE__). If you do need macros, put them in a header and include it.

The prefix header was necessary for things that are huge and used by nearly everything in the whole system (like Foundation.h). If you have something that huge and ubiquitous, you should rethink your architecture. Prefix headers make code reuse hard, and introduce subtle build problems if any of the files listed can change. Avoid them until you have a serious build time problem that you can demonstrate is dramatically improved with a prefix header.

In that case you can create one and pass it into clang, but it's incredibly rare that it's a good idea.

但有些时候,还是需要pch文件的,那么怎么在Xcode6中添加一个pch文件呢?

首先,Command+N,打开新建文件窗口:iOS->other->PCH file,创建一个pch文件,添加需要引入的头文件名:

其次,修改工程配置文件,将创建的pch文件的路径添加到building setting中的precompile header选项中去(路径添加“$(SRCROOT)/项目名称/pch文件

至此,完成了手动添加pch文件,编译一下程序,如果有错误检查一下添加的路径是否正确。(假如你写的时$(SRCROOT)这个开头的,那就建在根目录下,如果是$(PROJECT_DIR),那就无所谓了)

这里注意,开关Precompile Prefix Header时,pch的编译和导入机制是有很大不同的:

(1)如果Precompile Prefix Header为YES,那么pch会被预编译,预编译后的pch文件会被缓存起来,从而提高编译速度。 (2)如果Precompile Prefix Header为NO,那么pch不会被预编译,而是在每一个用到它导入的框架类库的.m文件中编译一次,降低了编译速度。

总结:既然苹果在Xcode6中去掉了Precompile Prefix Header文件,在开发的过程中可以尽量少用pch文件,如果要用也要尽量减少pch文件中得内容,降低程序对pch文件的依赖。

至此,大功告成,编译一遍,新添加的pch文件就可以正常使用了^_^。

转载自:http://www.cnblogs.com/mawenqiangios/p/5195866.html

相关文章

  • Prefix Header.pch文件的配置

    Prefix Header.pch文件的配置 一、如何在Xcode中添加pch文件 Command+N,打开新建文...

  • xcode8如何创建.PCH文件

    如何在Xcode中添加pch文件: 1 Command+N,打开新建文件窗口:ios->other->PCH fi...

  • Xcode8 PCH文件配置及bug解决

    本文介绍xcode8关于pch头文件的相关配置,本人遇到的问题以及如何解决的; 首先,在你的工程中添加pch文件如...

  • Xcode中如何添加pch文件

    在Xcode6之前,新建一个工程的时候,系统会帮我们自动新建一个以工程名为名字的pch (precompile h...

  • Xcode如何添加pch文件

    最近创建的pch文件,不再像以前一样好用了,既没有了提示,写了头文件之后又不认识了。下面来介绍一下,如何解决。1....

  • Xcode 6设置Pch文件

    Xcode 6将Pch文件移出默认创建文件, 须使用者手动添加, 添加步骤如下: 1. 创建Pch文件 2. 修改...

  • iOS开发之pch文件的配置与使用(最新)

    1、pch作用: 存放全局的宏、头文件、能自动打开或者关闭日志输出功能. 2、在Xcode中添加pch文件,只需要...

  • Xcode6中添加pch预编译头文件

    Xcode6之前,创建工程会自动生成pch已编译头文件,将工程中需要公共import的头文件直接添加到pch文件中...

  • iOS开发——pch文件添加和使用

    添加pch文件 Xcode6之后不会自动创建-Prefix.pch文件到你的工程里,所以我们想使用pch文件的话得...

  • 在Swift中添加 .pch

    在Xcode6之后,需要手动添加.pch. 添加的步骤如下: 一.创建Swift工程 二.添加pch文件 三.上面...

网友评论

    本文标题:Xcode中如何添加pch文件

    本文链接:https://www.haomeiwen.com/subject/ykjhnttx.html