共用方式為


/w、/Wn、/WX、/Wall、/wln、/wdn、/wen、/won (警告層級)

指定編譯器如何指定的編譯產生警告。

/w
/Wn
/WX
/Wall
/wln
/wdn
/wen
/won

備註

下表中描述可用的選項和相關引數。

選項

描述

/w

停用所有編譯器警告。

/Wn

指定警告層級是由編譯器產生的。 n 範圍的有效警告層級是從 0 到 4:

  • 層級 0 停用所有警告。

  • 層級 1 顯示嚴重警告。 層級 1 是預設值。

  • 層級 2 顯示小於第 1. 層級較不嚴重的警告層級 1 及和警告。

  • 層級 3 顯示為實際用途建議的所有層級 2 警告和其他警告。

  • 層級 4 顯示所有層級 3 警告和資訊警告。 建議您使用這個選項只提供類似 lint 的警告。 不過,在新的專案中,使用 /W4 在所有編譯最好;這會確保少可能不易發現的程式碼缺失。

/Wall

的預設顯示在/W4 不包含—範例的警告,關閉的所有/W4 警告和其他警告。 請參閱預設為關閉的編譯器警告

/WX

將所有編譯器警告視為錯誤。 對於新專案,最好在所有編譯中都使用 /WX;解除所有警告可以確保將不易發現的程式碼缺點降低到最少程度。

連結器也具有 /WX 選項。 如需詳細資訊,請參閱 /WX (將連結器警告視為錯誤)

/wln

指定特定警告的層級。 第一個參數是設定警告層級 (與 /Wn 相同) 而第二個參數則是實際的警告編號。

例如,/w14326 會使 C4326 成為層級 1 警告。

/wdn

在 n停用指定的編譯器警告。

例如,/wd4326 會停用編譯器警告 C4326。

/wen

要視為錯誤的 n在指定的編譯器警告。

例如,/we4326 會將警告號碼 C4326 標記為錯誤。

/won

只報告一次錯誤在 n指定的編譯器警告。

例如, /wo4326 導致警告 C4326 只報告一次。

如果您建立先行編譯標頭 ()/Yc (建立先行編譯標頭檔)使用其中一個選項, /w ,先行編譯標頭 (/Yu (使用先行編譯標頭檔)) 的所有使用重新實際上讓同樣的 /w 選項為。 您可以覆寫設定在先行編譯標頭的 /w 藉由在命令列上的另一個 /w 選項。

在原始程式碼中的 Pragma 指示詞不會受 /w 選項的影響。

您也可以使用控制項 warning 報告在編譯時期警告的層級。

建置錯誤文件 描述警告和警告層級,並且指出特定陳述式為何無法進行編譯,則是。

若要在 Visual Studio 開發環境中的編譯器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資訊,請參閱 HOW TO:開啟專案屬性頁

  2. 選取 [C/C++]。

  3. 在 [一般] 屬性頁,請修改 [警告層級] 或 [警告視為錯誤] 屬性。

  4. 在 [進階] 屬性頁,請修改 [停用特定警告] 屬性。

  5. 對於其他選項,在 [命令列] 屬性頁,請在方塊中 [其他選項] 的編譯器選項。

設定編譯器選項以程式設計方式

請參閱

參考

編譯器選項

設定編譯器選項