Xcode:PCH文件的創(chuàng)建和使用

由于Xcode不再自動(dòng)生成PCH文件(Precompile Prefix Header File)隧出,所以需要我們自己創(chuàng)建潮瓶,在新創(chuàng)建pch文件的時(shí)候赞庶,需要做的操作:

找到PCH File
image.png

創(chuàng)建完成之后车吹,在Build Settings里面找到下圖所示位置

image.png

關(guān)于路徑的填寫問題当辐,雙擊打開之后有個(gè)彈框,然后用鼠標(biāo)拖動(dòng)創(chuàng)建好的 PCH 文件晋渺,拖到彈框之后放手镰绎,就會自動(dòng)生成 PCH 的路徑
然后用$(SRCROOT)替換一下,就可以了(注意替換前后顯示的路徑是一致的方可)

這是拖拽之后生成的路徑
image.png
注意觀察木西,替換前后下圖顯示的路徑是沒有變化的
image.png

以下內(nèi)容網(wǎng)上查找畴栖,屬于轉(zhuǎn)載,但發(fā)現(xiàn)也是轉(zhuǎn)載文章八千,嘗試但未找到原文章@Enrica_Shi
https://www.cnblogs.com/wzdevelop/p/7339262.html

鏈接已失效吗讶,嘗試找到作者簡書,但是文章數(shù)為0

二恋捆、編輯PCH文件

?由于編輯器會自動(dòng)幫你把所有的預(yù)編譯文頭文件導(dǎo)入到項(xiàng)目所有的源文件中照皆,所以從編程規(guī)范上講,應(yīng)該利用條件編譯將Objective-C頭文件隔離起來沸停。尤其是在混合編程時(shí)膜毁,這種操作就顯得格外重要。下面就具體演示一下愤钾。

?先在PCH文件中隨便導(dǎo)入一個(gè)OC分類的頭文件瘟滨,然后在項(xiàng)目中新建一個(gè)C語言文件,在沒有利用條件編譯對OC分類頭文件進(jìn)行有效隔離的情況能颁,按住command + B鍵編譯一下杂瘸,看看會出現(xiàn)什么情況:

混合編程時(shí)沒有對OC頭文件進(jìn)行隔離的情況.gif

?因?yàn)榫幾g器會將PCH中的頭文件導(dǎo)入到項(xiàng)目中所有的源文件中,而C語言的源文件是不可能識別OC頭文件中的內(nèi)容的伙菊,所以編譯器會報(bào)一堆的錯(cuò)誤‰誓現(xiàn)在修改PCH文件,利用條件編譯將OC分類的頭文件進(jìn)行隔離占业,然后再重復(fù)上面的操作看一下還有沒有報(bào)錯(cuò):

利用條件編譯對OC的頭文件進(jìn)行有效的隔離.gif

?#ifdef OBJC(OBJC前后是兩條下劃線)和#endif可以將OC的頭文件與C語言的源文件進(jìn)行有效的隔離。也就是說纯赎,你在OC頭文件前后加了這個(gè)條件編譯之后谦疾,編譯器便不再將OC的頭文件拷貝到C語言的源文件中,它只會把OC的頭文件拷貝到OC的源文件中犬金,所以之前的錯(cuò)誤都消失了念恍。

?PCH文件可以很方便的將多個(gè)文件中都要使用的頭文件一次性導(dǎo)入到項(xiàng)目中所有的源文件中,同時(shí)晚顷,你也可以在PCH文件中定義全局使用的宏峰伙,這種操作可以有效幫你節(jié)約開發(fā)時(shí)間。但是该默,同時(shí)你也應(yīng)該注意到瞳氓,PCH文件的使用,無形中增加了項(xiàng)目編譯的時(shí)間栓袖,應(yīng)該有選擇性的慎重使用匣摘。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末店诗,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子音榜,更是在濱河造成了極大的恐慌庞瘸,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赠叼,死亡現(xiàn)場離奇詭異擦囊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)嘴办,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進(jìn)店門瞬场,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人户辞,你說我怎么就攤上這事泌类。” “怎么了底燎?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵刃榨,是天一觀的道長。 經(jīng)常有香客問我双仍,道長枢希,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任朱沃,我火速辦了婚禮苞轿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘逗物。我一直安慰自己搬卒,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布翎卓。 她就那樣靜靜地躺著契邀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪失暴。 梳的紋絲不亂的頭發(fā)上坯门,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天,我揣著相機(jī)與錄音逗扒,去河邊找鬼古戴。 笑死,一個(gè)胖子當(dāng)著我的面吹牛矩肩,可吹牛的內(nèi)容都是我干的现恼。 我是一名探鬼主播,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼述暂!你這毒婦竟也來了痹升?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤畦韭,失蹤者是張志新(化名)和其女友劉穎疼蛾,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體艺配,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡察郁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了转唉。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片皮钠。...
    茶點(diǎn)故事閱讀 39,703評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖赠法,靈堂內(nèi)的尸體忽然破棺而出麦轰,到底是詐尸還是另有隱情,我是刑警寧澤砖织,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布款侵,位于F島的核電站,受9級特大地震影響侧纯,放射性物質(zhì)發(fā)生泄漏新锈。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一眶熬、第九天 我趴在偏房一處隱蔽的房頂上張望妹笆。 院中可真熱鬧,春花似錦娜氏、人聲如沸拳缠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽脊凰。三九已至,卻和暖如春茂腥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背切省。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工最岗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人朝捆。 一個(gè)月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓般渡,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子驯用,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評論 2 353