天天看點

xcode不能使用autocomplete的原因之一

可能xcode不能使用autocomplete的原因有多種,但是我比較走遠,之前一直沒有遇到過,直到前幾天手賤更新了macOS,跟着也更新了xcode8.1 。在這期間我正在學習如何在自己的項目中添加framework的方法,結果照着網上的教程 操作,其實也賴我,我沒有嚴格按照教程的說明做,為什麼這麼說呢,因為教程中的工程名叫“MyFramework”,而我自己建立的工程叫“test-framework”,你知道嗎?出問題就出在了這上面,如果我是按照教程做的話,就不會有這篇筆記了。當我建立完工程時感覺有些不對勁兒,看這些源碼發現有些沒有高亮,但沒當回事兒,就在寫-(void)log:(NSString *)message;時發現,卧槽,咋沒有autocomplete了,由于剛更新完xcode,我開始懷疑的是xcode的問題,上google搜了一下“xcode8.1 autocomplete not work”,看了幾篇文章發現好像不是這個問題,于是就先不管了,忍着用沒有高亮的代碼繼續操練吧。寫完代碼後開始編譯,按完Command+B之後出現了一個錯誤:

xcode不能使用autocomplete的原因之一

看起來像是名字的問題,第1反應就是名字中沒有特殊字元啊,沒有中文,都是ASCII字元,然後把Warning後面的那句話用google搜了一下,找到了這篇文章 ,簡單說就是,這篇文章中也說明了是工程名中含有了字元”-“,這個是非法的,當時就有點震驚了,因為用慣了linux,一直認為隻要是ASCII字元的應該都沒有問題,哪成想xcode會有這個限制,”name is not a valid C99 extended identifier”,過一會看看C99 extended iendifier都有些什麼吧。于是乖乖的改了名字,卧槽,就好了,一切恢複正常了,autocomplete和高亮也都正常了。