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 你就會發現和第一種方法的路徑是一樣的。

這樣的話合作開發就沒問題啦。好啦就這樣啦。