一.简介

首先 pch 文件(即:Prefix Header)是一种预编译文件,在 Xcode 6 之前创建新的工程则会自动将该文件一起创建出来,但在 Xcode 6 之后苹果官方则默认将自动创建的方式变更为后续手动人工创建的方式;

该文件在项目工程中主要作用于将较常用且稳定的的类存放在其中,方便开发时共享其中的方法资源,不用多次在不同的类文件中引用其头文件.

但是有几点建议,因为该 pch 文件在预编译后会将头文件缓存起来,再次编译时则不需要重新编译该文件中的内容,进而提升了编译的速率,所有尽量不要将开发中共用性较低的文件或宏定义(宏定义可单独创建一个头文件进行存放,再将该宏文件引入至 pch)引入进 pch 文件中导致重复编译的操作,反而降低其速率使文件所带来的作用大大折扣.

二.创建

大致了解了其 pch 文件的作用后便可以创建,将其作用发挥起来,具体创建步骤如下:

1.右键选择 New File 或使用快捷键 command+N 的方式,则会出现创建文件的界面,在右上方搜索框中输出"pch"字样,如下图所示:

2.选中 PCH File 文件,点击 create 创建便会生成一个 pch 文件.

注:该 pch 文件的命名方式,建议以项目名称开头,例如项目名称为"TestDemo"则 pch 文件名称则为"TestDemo-Prefix",当然实际命名以用途为准.

三.配置

1.文件创建成功后,需要在 Target => Build Settings => Apple LLVM9.0-Language 中配置一下,具体如下图:

2.如上图中第5项处,双击弹出输入框后将创建的 pch 文件拖入其中,该 pch 文件的路径则会自动填充入其中,但当前默认生成的路径属于相对路径并非绝对路径,项目文件一旦位置发生变更系统将会抛出异常报错,为了避免这样的状况发生,则需要将现有的相对路径变更为绝对路径,具体操作如下:

将其输入框中的路径地址最前面插入"$(SRCROOT)"双引号中的字段,后面并以项目名称加文件夹层级的结构存在即可,如下图所示.

注:在 Xcode 9 之前可以以"$(SRCROOT)/项目名称/pch 文件名称"的方式,但在 Xcode 9 之后再次建立发现使用这种方式,编译工程依然会抛出异常警告,便尝试将相对路径中的文件夹层级保留后再次编译即可通过.

希望以上分享内容能对大家有所帮助,若有什么不当的地方也请多多指正共同进步,谢谢!

最新文章

  1. SEL-消息机制
  2. 10个顶级的CSS UI开源框架
  3. 2016HUAS暑假集训训练2 J - 今年暑假不AC
  4. windowDialog销毁页面的问题
  5. [maven] pom.xml 文件详解
  6. 安装WINCC6.0的步骤
  7. CentOS7,Firewalld防火墙使用方法
  8. Linux进程调度
  9. 利用Javamail接收QQ邮箱和Gmail邮箱(转)
  10. (蓝牙)网络编程中,使用InputStream read方法读取数据阻塞的解决方法
  11. open vswitch常用操作
  12. python+unittest框架整理(一点点学习前辈们的封装思路,一点点成长。。。)
  13. Java 单例(Singleton)模式
  14. Java8内置的函数式编程接口应用场景和方式
  15. Django之组件--auth组件
  16. [转]Centos 查看端口占用情况和开启端口命令
  17. web worker原理 && SSE原理
  18. Linq的左链接
  19. Python运维三十六式:用Python写一个简单的监控系统
  20. laravel5.1--数据库操作

热门文章

  1. eclipse把局部变量提为全局变量的快捷键是什么
  2. Perf -- Linux下的系统性能调优工具,第 2 部分 特殊用法以及内核调优示例
  3. 性能测试工具LoadRunner25-LR之常用性能指标计算公式
  4. bootstrap3-dialog:更强大、更灵活的模态框(封装好的模态框)
  5. 织梦DEDECMS {dede:arclist},{dede:list}获取附加表字段内容
  6. log4j.properties 日志分析
  7. Misc1
  8. 深入理解vertical-align和line-height的关系
  9. 将webservice嵌套到以完成的web项目中
  10. windows远程连接Mac、Mac远程连接Mac、Mac连接Windows