2010-04-21 28 views
10

海合會我所能做的編譯時警告這樣的:#warning後在Visual Studio

#if !defined(_SOME_FEATURE_) 
    #warning _SOME_FEATURE_ not defined-- be careful! 
#endif 

但在Visual Studio這不起作用。是否有#warning的替代語法?

回答

13

關於最接近的等效值將是#pragma message或可能的#error(後者停止編譯,前者僅打印指定的錯誤消息)。

+0

+1消息似乎是它。 – Tom 2010-04-21 18:50:49

+0

'#pragma message'與gcc不兼容。請參閱https://stackoverflow.com/questions/471935/user-warnings-on-msvc-and-gcc – 2017-08-29 07:32:19

0

#pragma WEIRD_VALUES_HERE

是我一直看到它所做的那樣。 M $可能在他們的網站上有某種地方的編譯指示。

+3

VS'#pragma'參考:http://msdn.microsoft.com/en -us/library/d9x1s805%28v = VS.80%29.aspx – 2010-04-21 18:46:06

10

使用#pragma message("Some message")

0

另一個想法是模板樣式編譯時斷言。如果你想檢查編譯時間代碼錯誤,Boost有這些選擇。

+1

該問題要求*警告*。 – 2010-04-21 19:03:38

相關問題