一、pch 文件的作用

  • PCH文件(Precompile Prefix Header File),也就是预编译头文件,其作用就是,方便你一次性导入在多个文件中同时用到的头文件、宏或者URL地址等(全局使用),可以有效的帮你节约时间,提高开发效率。但是,自从Xcode 5之后,这个文件默认就不再提供了,如果你还想继续使用的话,需要手动创建并配置。至于为什么默认不再提供,可能是出于提高编译效率方面的考虑,毕竟预编译也会提高Build的时间。

2、手动创建pch文件

三、配置pch文件

  • 在 TARGETS 中选择 Build Settings,搜索 Prefix Header,手动配置PCH文件的位置。
  • 将Precompile Prefix Header后面的值修改为YES,然后双击Prefix Header后面的空白处,Xcode会弹出一个输入框,直接将PCH文件在项目中的相对路径粘贴上去,按回车键即可配置成功。修改根路径前缀为$(SRCROOT)

四、编辑PCH文件

  • PCH文件使用时需要 commond+B 预编译一次.
  • #ifdef OBJC(OBJC前后是两条下划线)和 #endif 可以将OC的头文件与C语言的源文件进行有效的隔离。也就是说,你在OC头文件前后加了这个条件编译之后,编译器便不再将OC的头文件拷贝到C语言的源文件中,它只会把OC的头文件拷贝到OC的源文件中。

五、总结

  • PCH文件可以很方便的将多个文件中都要使用的头文件一次性导入到项目中所有的源文件中,同时,你也可以在PCH文件中定义全局使用的宏,这种操作可以有效帮你节约开发时间。但是,同时你也应该注意到,PCH文件的使用,无形中增加了项目编译的时间,应该有选择性的慎重使用。

iOS 创建 pch 文件相关推荐

  1. iOS 创建PCH文件

    从Xcode6开始,苹果取消了自带的pch预编译文件,这样做可能会加快编译时间增加用户体验.但好多程序员还是习惯使用.我简单来介绍下配置pch. 第一步:Command+N,打开新建文件窗口: iOS ...

  2. IOS的pch文件,NSTimer定时器,运行消息循环,随机色使用

    IOS的pch文件,NSTimer定时器,运行消息循环,随机颜色获取使用 xcode新创建一个项目命名pchTest 右键创建文件,选择other 下面的pch,名字不要管默认就好 选中项目 : Bu ...

  3. ios配置pch文件及使用

    使用pch文件可以实现宏定义,用来存储共享信息,便于开发者高效快速的开发项目.这里说一下pch文件的配置过程. 1,首先创建一个工程 2,在项目中创建pch文件(这里有点小坑呦!) 3,在 2 的基础 ...

  4. XCode6 ,iOS之PCH文件配置

    1: 创建PCH文件 NewFile-->Other中的PCH File-->Next-->Create 2:配置PCH文件 项目中的TARGETS-->Build Setti ...

  5. iOS中.pch文件如何使用

    pch 可以用来存储共享信息,比如设备屏幕的宽度,高度.版本号等等 公用信息 Xcode 老版本会自动为我们创建pch文件,新版本开始不自动创建了,如果需要使用可以自己手动创建 创建完成后可以在里面定 ...

  6. IOS 中 pch 文件详解

    在 Xcode6 之前,创建一个新工程会在 Supporting files 文件夹下面自动创建一个"工程名-Prefix.pch"文件,也是一个头文件,pch 头文件的内容能被项 ...

  7. ios怎么创建html文件夹,ios 创建html文件

    ios画html文件比较简单,就是创建个html文件,然后可劲往里面塞字符串就行了-字符串内容就是html语言控制html的内容, -(void)MyHTMLCreate{ //先弄个地址 NSArr ...

  8. iOS工程中创建pch文件

    1.新建pch类文件 2.在工程配置中,Build Setting 下搜索"pre"寻找Apple LLVM6.1 - Language下的 Preflx Header 3.点开P ...

  9. iOS 创建PDF文件

    前言 最近有个项目,功能为将多张图片创建为PDF文件. 创建PDF文档在iOS中有两种方法 PDFKit UIKit -> UIGraphicsPDFRenderer PDFKit 在 iOS ...

  10. iOS 配置pch文件

    Build Settings  ->  Apple LLVM 8.1-Language 目录下,找到下面两个标签进行设置 Prefix Header    $(SRCROOT)/PrefixHe ...

最新文章

  1. charshow技术预研
  2. arcgis坐标系学习总结
  3. IDEA中如何设置方法注释格式
  4. Eclipse自动代码补全
  5. 阻塞(Block)和非阻塞(Non-Block)
  6. linux怎么把磁盘的东西拷贝,[Linux]如何拷贝已有数据磁盘,并将新的磁盘挂接到其他虚机上...
  7. Linux系统初始化更新(更换阿里源)(centos7mini)
  8. strace监视系统调用
  9. Session共享的解决方案。
  10. 无盘服务器 免费,免费无广告的网咖专用云无盘安装图文教程
  11. RTK使用笔记-千寻CORS模式
  12. SPSS数据分析全套教程(2)—— 变量处理
  13. redis lpush WRONGTYPE Operation against a key holding the wrong kind of value
  14. C#为什么读作C Sharp
  15. ProcessOn -在线绘图
  16. QQ与TIM的不同之处
  17. 【KCP】UDP可靠性传输
  18. 基于haar特征的adaboost算法_目标检测算法介绍
  19. 使用Matlab绘制三维空间中的任意圆(参数方程/坐标转换)
  20. 怂了!马斯克被罚1.2亿并卸任董事,特斯拉可以歇歇了

热门文章

  1. 手机方向传感器的缺点及解决方法探究
  2. 360插件化踩坑记录(二),RePlugin安装、启动插件无反应
  3. Android Studio 导入图片标红错误
  4. python完成非线性拟合
  5. 文件后缀bat是什么?(批处理文件)
  6. 苹果手机如何设置喜欢的铃声?想给自己的iphone换个别具特色的铃声吗?
  7. 2022年农产品行业研究报告
  8. 03 ,seaborn 颜色 : 正态分布图,多元正态分布,核密度估计图
  9. iPhone4 兼容 iPhone 5 需要注意的地方
  10. VIP邮箱哪个最好用?怎么申请163电子邮箱?