Xcode警告忽略

 

Xcode中 cmd+B 以後總會出現各類各樣的警告,對於一個對代碼有潔癖的人,這種狀況很難忍,接下來咱們用些特殊手段強制消除這些警告 ui

 

1、忽略源文件中的警告

  使用編譯器宏來操做spa

#pragma clang diagnostic push
#pragma clang diagnostic ignored "警告名稱"

// 被夾在這中間的代碼針對於此警告都會忽視不會顯示出來

//常見警告的名稱
//1, 聲明變量未使用  "-Wunused-variable"
//2, 方法定義未實現  "-Wincomplete-implementation"
//3, 未聲明的選擇器  "-Wundeclared-selector"
//4, 參數格式不匹配  "-Wformat"
//5, 廢棄掉的方法     "-Wdeprecated-declarations"
//6, 不會執行的代碼  "-Wunreachable-code"

#pragma clang diagnostic pop

  例:.net

#pragma clang diagnostic push //收集當前的警告

//忽略在arc 環境下performSelector產生的 leaks 的警告
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"

// 包含 performSelector 的語句

#pragma clang diagnostic pop //彈出全部的警告

  

  固然,也能夠在pch等具備大範圍做用域的頭文件中包含: code

    #pragma clang diagnostic ignored "警告名稱"orm

  若是剔除了push與pop 則後面全部的代碼都具備強制消除警告做用blog

 

  查找某一種警告名稱的方法:ip

    打開一個工程,編譯項目(不編譯Reveal in Log是灰色的),切換左側導航區域>>issue navigator,下面[]裏面的字符串就是該警告的名稱作用域

  

2、忽略工程中的警告

  在項目的 Build Settings 中也能夠設置忽略某種或多種類型的警告,不過在這設置的影響範圍就是整個項目的了,要三思然後行,否則就是給本身挖坑字符串

  仍是上面的例子,在 Build Settings 中找到 Custom Compiler Flags,雙擊 Other Warning Flags(能夠配置 DebugRelease 環境),填入 -Wno-unused-variableget

  完成後,編譯項目,項目中全部的此類型警告都沒有了。Build Settings 中項目全局忽略警告這裏所填寫的內容規則,僅僅是在第一種方法中找到的警告標識符中的 W 字母后面加上 no- 就能夠了


 
 

3、忽略cocoapod項目中的警告

   使用cocoapod引入的第三方,若是第三方庫中有警告,能夠在podfile文件中增長一句  inhibit_all_warnings!

 

4、忽略.md/.mdown/.h類型警告

   將以上文件從Compile Sources中刪除。路徑TARGETS > Build Phases > Compile Sources 選中該類型文件刪除

 

 

參考資料(戳這裏):

>  談談Objective-C的警告

>  去掉Xcode中某類型的警告

>  Xcode項目忽略警告

>  部分Xcode編譯警告類型

相關文章
相關標籤/搜索