2011-11-17 73 views
1

如果我要禁用特定的警告,編譯說VC++和運行這個:如何在編譯時檢查編譯器?

#pragma warning(disable : xxxx) 

在科莫或g ++,我如何確保預處理器將不會被執行呢?

+1

難道你不是在編譯時:IMO的標題是誤導。 – Ralf

回答

2

要檢測MSVC編譯器,你可以看到,如果_MSC_VER定義,所以你可以做這樣的事情

#ifdef _MSC_VER 
#pragma warning(disable : xxxx) 
#endif 

Predefined Macros提供有關預定義VS宏

2

的宏來識別的列表,請參閱this resource信息編譯器正在被使用。使用它們如下(對於MS VC):

#ifdef _MSC_VER 
#pragma warning(disable : xxxx) 
#endif