.pch文件即预编译头文件,可以用于引入一下常用的.h头文件的引用。编译器就会自动的将pch文件中的头文件添加到所有的源文件中去,很大程度上带来了编程的便利性,同时也带来了一些问题,添加过多预编译头文件会造成编译用时过长,所以添加时要有取舍。iOS开发中多用于默认框架<Foundation/Foundation.h>已及<UIKit/UIKit.h>的引入。
创建方法
在已有项目中,右键New File..
弹出选择框,在左侧Menu选择IOS类目下的Other,在右侧选择PCH File.选择Next,自动创建成功。
选择项目中的.pch文件显示如下
#ifndef PrefixHeader_pch
#define PrefixHeader_pch
// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.
#endif/* PrefixHeader_pch */
在#define 和 #endif 中间添加以下代码
#ifdef __OBJC__
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#endif
其他头文件可以同样方式#import至其中。
这时候可以将Appdelegate中的<UIKit/UIKit.h>注释掉,编译一下
Fail了?那就对了!有一个需要注意的点,.pch生成后需要手动配置一下编译路径,不然可能搜索不到.pch文件,造成编译失败。
手动添加.pch路径
building setting中的Prefix header选项双击,注意debug和release两栏都要添加:$(SRCROOT)/XXFramework/PrefixHeader.pch
$(SRCROOT)为当前目录路径 后面是.pch在项目中的位置路径