診斷指令用於顯式生成錯誤信息和警告消息,這些信息的報告方式與其他編譯時錯誤和警告相同。
示例:
#warning Code review needed before check-in #if Debug && Retail #error A build can't be both debug and retail #endif class Test {...}
總是產生一個警告(“Code review needed before check-in”),如果同時定義條件符號 Debug
和 Retail
,則產生一個編譯時錯誤(“A build can't be both debug and retail”)。注意 pp-message(pp 消息)可以包含任意文本;具體說來,它可以包含格式不正確的標記,比如“can't
”中的單引號就是這樣。