魚和熊掌都要吧

2021-09-07 12:29:59 字數 1662 閱讀 2437

前言:本文部分部片採取網上的。

自從xcode六之後蘋果就取消掉pch.降低編譯時間和新增效能

在xcode6之前。建立乙個新projectxcode會在supporting files目錄以下自己主動建立乙個「project名-prefix.pch」檔案,也是乙個標頭檔案,pch標頭檔案的內容能被專案中的其它全部源檔案共享和訪問。是乙個預編譯檔案。

首先說一下pch的作用:

1.存放一些全域性的巨集(整個專案中都用得上的巨集)

2.用來包括一些所有的標頭檔案(整個專案中都用得上的標頭檔案)

3.能自己主動開啟或者關閉日誌輸出功能

儘管用了非常久的xcode6可是專案是xcode5之前建立好的,所以一開始並沒有發現缺少了這個pc**件。蘋果為什麼要這麼做呢,原因可能是由於大家把大量的標頭檔案和巨集定義放到pch裡邊,導致編譯時間過長。蘋果去掉他可能是要加快編譯時間新增使用者體驗。

儘管失去了程式設計的便利性。不得不佩服蘋果的以使用者為中心的思考方式。更具體的討論能夠去stackoverflow上去看

怎樣在xcode中加入pc**件:

command+n,開啟新建檔案窗體:ios->other->pch file,建立乙個pc**件

2,在project的targets裡邊building setting中搜尋prefix header,然後把precompile prefix header右邊的no改為yes:

3.然後在precompile prefix header下邊的prefix header右邊雙擊,加入剛剛建立的pc**件的project

路徑,加入格式:「$(srcroot)/專案名稱/pc**件名稱」 。$(srcroot)的意思就是project根資料夾的意思。

假設還不太清楚的話能夠右鍵pc**件。然後show in finder:

上圖中黃色圈出來的就是$(srcroot),也就是project的根資料夾。然後後邊另乙個pchtext和pch兩個資料夾。所以完整的pc**件的路徑就是:$(srcroot)/pchtext/pch

加入完畢後。他會自己主動幫你變成你project所在的路徑:

能夠了,編譯一下程式。假設有錯誤檢查一下加入的路徑是否正確。

4。將precompile prefix header為yes,預編譯後的pc**件會被快取起來,能夠提高編譯速度

祝好

魚和熊掌都要吧

前言 本文部分部片採取網上的。自從xcode六之後蘋果就取消掉pch.減少編譯時間和增加效能 在xcode6之前,建立乙個新工程xcode會在supporting files資料夾下面自動建立乙個 工程名 prefix.pch 檔案,也是乙個標頭檔案,pch標頭檔案的內容能被專案中的其他所有源檔案共...

魚和熊掌不可兼得

互動。每次可以詢問乙個排列,返回這個排列與答案排列相同位置的個數,求出這個答案排列。n 5 103 que ries 5 1 04 n le 5 times 10 3 queries le 5 times 10 4 n 5 10 3 qu erie s 5 104考慮先求出乙個錯排,那答案會形如若干...

(學軍集訓)魚和熊掌不可兼得

互動題。有乙個排列p,你每次可以詢問乙個排列ans,可以得到p與ans相同的位置有多少個 count ans 你需要在不超過limit的詢問次數內得出這個排列。資料範圍 n 5000,l imit 50000 n le5000,limit 50000 n 5000 lim it 5 0000 考慮在...