[英]How can I detect g++ and MinGW in C++ preprocessor?
我想做的事情如下:
#ifdef GCC
#define GetFunctionName() string("My function name is ") + __PRETTY_FUNCTION__;
#endif
由於我想使用漂亮的PRETTY_FUNCTION ,據我所知只有gnu支持所以我需要檢測我是否正在編譯g ++和MinGW,我該怎么做? 我猜我需要知道的是編譯器的預處理器定義,就像我在下面為Microsoft做的那樣。
#ifdef WIN32
#define LogFuncBegin() gLogger.FuncBegin( __FUNCTION__ );
#define LogFuncEndSuccess() gLogger.FuncEndSuccess( __FUNCTION__ );
#endif
如何在C ++預處理器中檢測g ++和MinGW?
對於GCC:
#ifdef __GNUC__
對於MinGW:
#ifdef __MINGW32__
x86_64-w64-mingw32-gcc定義了__MINGW32__
和__MINGW64__
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.