依預設是關閉的編譯器警告
編譯器會包含旋轉預設的警告。如果警告預設是關閉的,大多數的使用者不會看到它。不過,您可以使用下列其中一個選項,您可以啟用這種警告。
#pragma warning(default : warning_number)
指定的警告) (warning_number啟用其預設陣序。這個警告的檔案包含預設的這個警告。#pragma warning(warning_level : warning_number)
指定的警告) (warning_number啟用指定的層級 (warning_level)。/Wall
/Wall 預設啟用的所有警告。
下列警告預設為關閉的。
C4061 (層級 4) |
列舉值"在參數的列舉" enumeration " identifier "不是由 case 標籤明確處理 |
C4062 (層級 3) |
列舉值"在參數的列舉" enumeration " identifier "不會被處理。 |
C4191 (層級 3) |
" operator/operation ":從「expression "的型別不安全的轉換為" type required |
C4242 (層級 4) |
" identifier ":從" type1 "轉換為" type2 ",資料可能遺失 |
C4254 (層級 4) |
" operator ":從" type1 "轉換為" type2 ",資料可能遺失 |
C4255 (層級 4) |
" function ":未指定的函式原型 (Prototype):轉換「()」至「(void) " |
C4263 (層級 4) |
" function ":成員函式沒有覆寫任何基底類別虛擬成員函式 |
C4264 (層級 1) |
" virtual_function ":虛擬成員函式沒有覆寫可自基底類別" class "的,函式已被隱藏 |
C4265 (層級 3) |
「class ":類別具有虛擬函式,不過,解構函式不是虛擬的 |
C4266 (層級 4) |
" function ":虛擬成員函式沒有覆寫可自基底類別" type ",函式已被隱藏 |
C4287 (層級 3) |
" operator ":不帶正負號/負常數不相符 |
C4289 (層級 4) |
使用非標準的擴充:'var' : 在 for-loop 範圍外使用 for-loop 中所宣告的迴圈控制變數 |
C4296 (層級 4) |
" operator ":運算式永遠是 false |
C4302 (層級 2) |
" conversion ":從" type1 "到" " type2 " |
C4350 (層級 1) |
行為變更: 呼叫了 'member1' 而不是 'member2' |
'this' : 在基底成員初始設定式清單中使用 |
|
C4365 (層級 4) |
" action ":從「type_1 "轉換為" type_2 ",簽署和未簽署的不符 |
C4412 (層級 2) |
" function ":函式簽章包含型別" type ",C++ 物件傳遞並不安全。在純程式碼和混合或原生 |
C4431 (層級 4) |
遺漏型別規範 - 假設為 int。注意: C 已不再支援 default-int |
C4435 (層級 4) |
" class1 ":在/vd2 下的物件配置會變更因為虛擬基底" class2 " |
C4437 (層級 4) |
從虛擬基底「到「class2 " class1 "的 dynamic_cast 可以從內容中失敗 |
C4514 (層級 4) |
" function ":已移除未參考的內嵌函式 |
C4536 (層級 4) |
「type name ":型別名稱超過中繼資料" limit "個字元的限制。 |
C4545 (層級 1) |
逗號之前的運算式評估為遺漏引數清單的函式 |
C4546 (層級 1) |
逗號之前的函式呼叫遺漏引數清單 |
C4547 (層級 1) |
" operator ":逗號之前的運算子無效;必須是具有副作用的運算子 |
C4548 (層級 1) |
逗號之前的運算式無效; 必須是具有副作用的運算式 |
C4549 (層級 1) |
" operator ":逗號之前的運算子無效;要使用" operator "嗎? |
C4555 (層級 1) |
運算式無效; 必須是具有副作用的運算式 |
C4557 (層級 3) |
'__assume' 包含有效的 'effect' |
C4571 (層級 4) |
告知性:catch (...) 語意 (Semantics) 從 Visual C++ 7.1 開始已經變更,結構化例外處理 (Structured Exception (SEH) 不再攔截 |
C4619 (層級 3) |
#pragma warning:沒有警告編號" number " |
C4623 (層級 4) |
" derived class ":,因為基底類別預設建構函式無法存取,預設建構函式不能產生 |
C4625 (層級 4) |
" derived class ":,因為基底類別 (Base Class) 複製建構函式無法存取,則無法產生複製建構函式 |
C4626 (層級 4) |
" derived class ":,因為基底類別的指派運算子無法存取,無法產生指派運算子 |
C4628 (層級 1) |
不支援使用 -Ze 的雙拼詞。字元順序 'digraph' 沒有解譯為 'char' 的替代語彙基元 (Token) |
C4640 (層級 3) |
" instance ":區域靜態物件的建構不是安全執行緒。 |
C4641 (層級 3) |
XML 文件註解有模稜兩可的交互參考 |
C4668 (層級 4) |
'symbol' 未定義成前置處理器巨集,以 '0' 取代 'directives' |
C4686 (層級 3) |
" user-defined type ":行為可能有變更,在 UDT 傳回呼叫慣例的變更 |
C4692 (層級 1) |
'function': 非私用成員的簽章含有組件私用原生型別 'native_type' |
C4710 (層級 4) |
" function ":未內嵌函式 |
C4711 (層級 1) |
函式 'function' 被指定為自動內嵌展開 |
C4738 (層級 3) |
在記憶體中儲存 32 位元浮點結果,可能會損失效能 |
C4820 (層級 4) |
在成員建構 'member_name' 之後加入 'bytes' 位元組填補 |
C4826 (層級 2) |
從" type1 "轉換為" type2 "是標記延伸。這可能會造成未預期的執行階段行為。 |
C4836 (層級 1) |
使用非標準擴充: 'type' : 區域型別或未命名型別不可做為 template 引數 |
C4837 (層級 4) |
偵測到三併詞: '??%c' 已由 '%c' 取代 |
C4905 (層級 1) |
寬字串常值轉換成 'LPSTR' |
C4906 (層級 1) |
字串常值轉換成 'LPWSTR' |
C4917 (層級 1) |
" declarator ":GUID 僅能與類別、介面或命名空間 |
C4928 (層級 1) |
不合法的 copy-initialization; 已經隱含套用一個以上的使用者定義的轉換 |
C4931 (層級 4) |
我們假設已針對 number 位元指標建置型別程式庫 |
C4946 (層級 1) |
在關聯的類別之間使用的 reinterpret_cast:'class1' 和 'class2' |
C4962 |
" function ":特性指引最佳化已停用,因為最佳化導致分析資料變成不一致 |