編譯器提示:warning treated as error,然後某個檔案未生成,build中斷。
這是因為項目選項中把warning級别設定為了較高的級别導緻的,某些warning被當作error,進而不能生成。
解決方法是在解決方案視窗中選中項目,右鍵點選project,選擇“屬性”,在彈出的對話框中,選擇左側TreeView中的“Configuration Properties”->“C/C++l”->“General”節點,在右側有“Treat Warnings As Errors”(将警告當作錯誤對待)選項。我們把該項該為NO即可。即把相應指令行的"/WX"改為"/W"。
相應的編譯選項如下:(參考MSDN)
/w 禁止所有警告
/Wn 指定顯示的最高等級警告。有效等級是0~4。0級禁止所有警告。4級顯示所有警告。
/Wall 使能所有警告。
/WX 視所有警告為錯誤。
/wln 将某個指定警告視為某個級别。第一個參數是新的級别,第二個參數是警告号碼。例如/w14326 使 C4326成為1級警告。
/wdn 禁止某特定警告。n是警告号。例如, /wd4326 禁止C4326警告。
/wen 将某個指定警告視為錯誤。n是警告号。例如, /we4326 把 C4326 視為錯誤。
/won 某警告僅僅報告一次。例如:wo4326使C4326僅僅報告一次。