.pch文件即預(yù)編譯頭文件未蝌,可以用于引入一下常用的.h頭文件的引用晴弃。編譯器就會(huì)自動(dòng)的將pch文件中的頭文件添加到所有的源文件中去,很大程度上帶來了編程的便利性已烤,同時(shí)也帶來了一些問題族操,添加過多預(yù)編譯頭文件會(huì)造成編譯用時(shí)過長(zhǎng)苛坚,所以添加時(shí)要有取舍。iOS開發(fā)中多用于默認(rèn)框架<Foundation/Foundation.h>已及<UIKit/UIKit.h>的引入色难。
創(chuàng)建方法?
在已有項(xiàng)目中泼舱,右鍵New File..?
彈出選擇框,在左側(cè)Menu選擇IOS類目下的Other枷莉,在右側(cè)選擇PCH File.選擇Next娇昙,自動(dòng)創(chuàng)建成功。
選擇項(xiàng)目中的.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至其中笤妙。
這時(shí)候可以將Appdelegate中的<UIKit/UIKit.h>注釋掉冒掌,編譯一下
Fail了?那就對(duì)了蹲盘!有一個(gè)需要注意的點(diǎn)股毫,.pch生成后需要手動(dòng)配置一下編譯路徑,不然可能搜索不到.pch文件辜限,造成編譯失敗皇拣。
手動(dòng)添加.pch路徑
building setting中的Prefix header選項(xiàng)雙擊严蓖,注意debug和release兩欄都要添加:$(SRCROOT)/XXFramework/PrefixHeader.pch
$(SRCROOT)為當(dāng)前目錄路徑 后面是.pch在項(xiàng)目中的位置路徑