在Xcode6之前,創建一個新工程xcode會在Supporting files文件夾下面自動創建一個“工程名-Prefix.pch”文件,也是一個頭文件,pch頭文件的內容能被項目中的其他所有源文件共享和訪問。是一個預編譯文件.
首先說一下pch的作用:
1.存放一些全局的宏(整個項目中都用得上的宏)
2.用來包含一些全部的頭文件(整個項目中都用得上的頭文件)
3.能自動打開或者關閉日志輸出功能 (這個非常的好用,可以自定義NSLog函數,在調試階段是需要這個函數的,但是在發布階段就不需要這個函數了.)
雖然用了很久的Xcode6但是項目是xcode5之前創建好的,所以一開始并沒有發現缺少了這個pch文件。蘋果為什么要這么做呢,原因可能是因為大家把大量的頭文件和宏定義放到pch里邊,過度依賴PCH.導致編譯時間過長。蘋果去掉他可能是要加快編譯時間增加用戶體驗。雖然失去了編程的便利性。不得不佩服蘋果的以用戶為中心的思考方式。更詳細的討論可以去Stackoverflow上去看http://stackoverflow.com/questions/24158648/why-isnt-projectname-prefix-pch-created-automatically-in-xcode-6。
如何在Xcode中添加pch文件:
Command+N,打開新建文件窗口:ios->other->PCH file,創建一個pch文件
2,將building setting中的precompile header選項的路徑添加“項目名稱/pch文件名”(例如:LotteryFive/LotteryFive-Prefix.pch)
可以了,編譯一下程序,如果有錯誤檢查一下添加的路徑是否正確。
3,將Precompile Prefix Header為YES,預編譯后的pch文件會被緩存起來,可以提高編譯速度