pch文件说白了就是一个头文件,只不过这个头文件的类在全局都可以使用,所以说非常的方便,并不用在每个类里面都写一些重复类的头文件,只要将用到的类的头文件放到pch文件里面就行了,当然了还有就是宏定义,这肯定也是必须的。

那么这么好用的怎么使用的。

1.

command + n 新建一个pch文件,在Xcode8.2里面要往下选(因为pch文件在下面上面是没有pch这个文件类型的),

如图:(上面是没有pch文件的,需要往下拉,拉到最下面你就会看到了。)

接着next,然后就是输入pch文件的名字了然后继续就好了一半。刚建好的文件里面会有一些注释,是可以删掉的。如图:

所有的第三方类和自己的类的头文件就可以这个里面,当然了肯定少不了宏定义。配置好(pch文件还需要配置,创建好只是第一步,不配置的话是用不了的,配置过后就可以用了)就可以在整个项目里调用这里的类。

2.

就是配置pch文件了。

第一步:在工程的TARGETS里边Building Setting中搜索Precompile Prefix Heade,然后把Precompile Prefix Header右边的NO改为Yes:

如图:

第二步:再继续搜索Prefix Heade,找到Prefix Heade,就在倒数第三四行。

如图:

然后找到pch文件,show in finder,然后就是编辑Prefix Heade,在右边双击,紧接着就是将刚才的pch文件用鼠标拉进来就OK了。

如图:

最后一个小插曲:

刚才的那种方法(就是把文件拉进来的这种方法)只适合于个人开发,不适合合作开发 ,因为存储的目录有电脑名字和用户的名字,换个电脑就会报错找不到这个文件,那怎么办呢???

其实很简单,因为这个事绝对路径,就是死的,解决的办法就是把路径换成相对路径,就是相对于这个项目的位置。

$(SRCROOT)就代表项目的位置就是放置项目的那个文件夹,就参照他就可以了。

如图:

$(SRCROOT) 就是左边的pch文件夹,那么这个项目里的Prefix Heade就应该为$(SRCROOT)/PrefixHeader.pch,command + b 你就会发现和第一种方法的路径是一样的。

这样的话合作开发就没问题啦。好啦就这样啦。

pch文件的作用和配置的更多相关文章

  1. 【学习总结】Info.plist和pch文件的作用

      Info.plist   建立一个工程后,会在Supporting files文件夹下看到一个“Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 项目中其他Plis ...

  2. pch文件的创建与配置

    1.ios中pch文件的创建与配置 1.1 ios中pch文件的创建与配置 1.2 全局宏定义标志的配置 2.宏定义 这里放的主要是开发中常用的宏定义. /** 动态的字符串格式化宏 */ #defi ...

  3. ios中pch文件的创建与配置

     PCH文件(Precompile Prefix Header File),也就是预编译头文件,其作用就是,方便你一次性导入在多个文件中同时用到的头文件.宏或者URL地址等(全局使用),可以有效的帮你 ...

  4. Info.plist和pch文件的作用,UIApplication,iOS程序的启动过程,AppDelegate 方法解释,UIWindow,生命周期方法

    Info.plist常见的设置 建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 注:在旧 ...

  5. 工程中.pch文件的作用 及使用方法

    #ifdef __OBJC__ #define ABC 10#import "UIImage+Image.h"// 配置pch: buildSetting -> prefix ...

  6. Linux基线合规检查中各文件的作用及配置脚本

    1./etc/motd 操作:echo " Authorized users only. All activity may be monitored and reported " ...

  7. Info.plist和pch文件的作用

  8. Xcode 中 pch 文件配置 - iOS

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

  9. iOS开发 - OC - PCH文件使用

    一. PCH文件的作用 Xcode中,PCH文件在程序编译的时候会自动包含进去.也就是说PCH中的内容是全局的,可以使用在程序的任何地方,通过这个特性,我们可以概括到PCH的作用有以下几个方面: (1 ...

随机推荐

  1. SQL点滴23—T-SQL中的除法

    原文:SQL点滴23-T-SQL中的除法 在T-SQL中没有除法运算,但是在T-SQL中可以实现类似除法的操作Divide.一般除法操作的结果一个列来自于被除关系表,剩下的来自除关系表.这里举一个例子 ...

  2. SQL点滴15—在SQL Server 2008中调用C#程序

    原文:SQL点滴15-在SQL Server 2008中调用C#程序 T-SQL的在执行普通的查询的时候是很高效的,但是在执行循环,判断这样的语句的时候效率就不那么的高了.这时可以借助CLR了,我们可 ...

  3. jQuery.form Ajax无刷新上传错误 (jQuery.handleError is not a function) 解决方案

    今天,随着ajaxfileupload时间firebug财报显示,"jQuery.handleError is not a function"错误.因为一旦使用jQuery.for ...

  4. [译]Java垃圾回收是如何工作的

    说明:这篇文章来翻译来自于Javapapers 的How Java Garbage Collection Works 这部分教程是为了理解Java垃圾回收的基础以及它是如何工作的.这是垃圾回收系列教程 ...

  5. 在VirtualBox下安装CentOS教程(截图版)

    http://blog.csdn.net/kobe_lzq/article/details/7894718 使用的软件: VirtualBox 4.1.2 CentOS 5.6 x86_64  刻录的 ...

  6. 【SSH三个框架】Hibernate第八部分基础:经营-many关系

    在Hibernate在-many关系.它通常不使用.由于当数据库查询复杂度太高时. 我们在这里做的是学生和教师,学生可以有多个老师,教师可以有多个学生. watermark/2/text/aHR0cD ...

  7. windows server 2003断开远程之后自动注销用户

    windows server 2003断开远程之后自动注销用户 2011-07-30 09:42:52     我来说两句      收藏    我要投稿 最近一台服务器老是断开远程之后过没多久就自动 ...

  8. Best jQuery Plugins of the Month – May 2014

    1. jQuery referenceSection jQuery referenceSection by Scott Mascio ensures to help users in adding a ...

  9. 修改servu数据库密码 servu加密方式

    项目要求可以有用户自行修改servu密码.servu可以通过odbc访问access\mysql\sqlserver数据库.我们直接通过创建web来修改就可以了. 不过问题来了,密码是加密的...通过 ...

  10. LigerUI一个前台框架增、删、改asp.net代码

    LigerUI一个前台框架增.删.改asp.net代码的实现   先上代码:前台代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tran ...