添加pch文件

原创 2015年07月10日 09:44:45

在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 file的路径添加到building setting中的precompile header选项中去,注意debug和release两栏都要添加:




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

版权声明:本文为博主原创文章,未经博主允许不得转载。

ios8之后Xcode手动添加pch文件

1、pch简介 pch文件是一个预编译文件,在项目文件比较多的情况下,重复导入(#import “XXX.h”)同一个文件是不可避免的,虽然可以重复导入,但为了项目的简单明了,pch文件还是必要的...
  • sw_gegewu
  • sw_gegewu
  • 2016年04月11日 23:10
  • 7860

iOS开发 Xcode添加PCH文件和常用的宏

Xcode添加PCH文件和常用的宏
  • royal_mjz
  • royal_mjz
  • 2017年04月06日 14:13
  • 348

Swift下创建和引用pch文件

新天开始写swift的第一个项目,一开始创建工程时就遇到问题,在xcode6出来之后,pch文件被删除。  首先先穿件一个pch文件。  按照原来的oc方法,  如何在Xcode中添加p...
  • wsjshx
  • wsjshx
  • 2015年08月30日 18:17
  • 3803

Xcode7如何添加PCH文件以及解决添加后定义的宏使用不了的问题

如何添加pch文件如何定义OC的宏发现.m文件使用不了,没有任何提示。。解决方法OK,所有工作已经准备好,现在只要按command+B编译一下,就会看到提示了...
  • u012592258
  • u012592258
  • 2015年12月01日 17:25
  • 1376

iOS小技巧-为项目添加全局PrefixHeader.pch预编译文件

现在xcode的版本创建新的项目时,不会默认为开发者创建一个全局的PrefixHeader.pch文件,下面简单说下如何自己配置一个PrefixHeader.pch预编译文件。 第一步、在n...
  • qiuyoujie
  • qiuyoujie
  • 2017年11月04日 17:53
  • 100

iOS中pch文件的设置

问题一:pch文件是什么? 问题二:pch文件在开发中起到什么作用? 问题三:如何设置pch文件?...
  • Iven_ma
  • Iven_ma
  • 2017年03月21日 11:17
  • 2066

iOS9创建PCH文件

在Xcode6之前,创建一个新工程xcode会在Supporting files文件夹下面自动创建一个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件...
  • yangyufan_01
  • yangyufan_01
  • 2016年05月30日 16:34
  • 293

添加PCH文件以及自定义输出(OC & Swift)

运行环境: Xcode 7.3 OX 10.11.3 一、PCH文件说明 * PCH文件的内容能被项目中的其他所有源文件共享和访问(全局引用); * PCH文件一般存放常用的宏 & 头文件; ...
  • sinat_34857341
  • sinat_34857341
  • 2016年05月02日 23:23
  • 956

iOS 添加PCH全局引用文件 —— HERO博客

简介PCH文件及使用。#define简介宏定义及使用。
  • hero_wqb
  • hero_wqb
  • 2015年12月23日 17:43
  • 1463

iOS中如何使用PCH文件、修改其相对路径的方法

1、个人对PCH 的理解:PCH 文件是针对一些宏定义的,常用的变量的定义或常用到的类,只要在PCH 中定义的变量,在整个工程中都可以使用,如果多个类需要导入很多类,我们可以在PCH文件中导入需要导入...
  • Boyqicheng
  • Boyqicheng
  • 2015年09月29日 11:15
  • 5594
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:添加pch文件
举报原因:
原因补充:

(最多只允许输入30个字)