[iOS開發]開啟/關閉編譯器警告

來源:互聯網
上載者:User

標籤:

  1. 全域開啟/關閉
    1. “Build Settings” -> “Apple LLVM - Warnings”中選擇需要開啟/關閉的警告
    2. “Build Settings” -> “Apple LLVM - Custom Compiler Flags”中添加標識,開啟標識為-W...,關閉標識為-Wno...
      1. -Wall 並不是所有警告。這一個警告組開啟的是編譯器開發人員對於“你所寫的代碼中有問題”這一命題有著很高的自信的那些警告。要是在這一組設定下你的代碼出現了警告,那基本上就是你的代碼真的存在嚴重問題了。但是同時,並不是說開啟Wall就萬事大吉了,因為Wall所針對的僅僅只是經典程式碼程式庫中的為數不多的問題,因此有一些致命的警告並不能被其捕捉到。但是不論如何,因為Wall的警告提供的都是可信度和優先順序很高的警告,所以為所有項目(至少是所有新項目)開啟這組警告,應該成為一種良好的習慣。
      2.  -Wextra 如其所名,-Wextra組提供“額外的”警告。這個組和-Wall組幾乎一樣有用,但是有些情況下對於代碼相對過於嚴苛。一個很常見的例子是,-Wextra中包含了-Wsign-compare,這個警告標識會開啟比較時候對signed和unsigned的類型檢查,當比較符兩邊一邊是signed一邊是unsigned時,產生警告。其實很多代碼並沒有特別在意這樣的比較,而且絕大多數時候,比較signed和unsigned也是沒有太大問題的(當然不排除會有致命錯誤出現的情況)。需要注意,-Wextra和-Wall是相互獨立的兩個警告組,雖然裡面開啟的警告標識有個別是重複的,但是兩組並沒有包含的關係。想要同時使用的話必須在Other C Flags中都加上.
      3.  -Weverything 這個是真正的所有警告。但是一般開發人員不會選擇使用這個標識,因為它包含了那些還正在開發中的可能尚存bug的警告提示。這個標識一般是編譯器開發人員用來調試時使用的,如果你想在自己的項目裡開啟的話,警告一定會爆棚導致你想開始撞牆..
  2. 針對特定檔案開啟/關閉
    1. “Build Phases” -> “Compile Sources”,在指定檔案的“Compiler Flags”添加標識
  3. 針對特定程式碼開啟/關閉
    1. 1 #pragma clang diagnostic push 2 #pragma clang diagnostic ignored "-Wunused-variable" 3   4 #pragma clang diagnostic pop

       

[iOS開發]開啟/關閉編譯器警告

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.