मैं C++ प्रीप्रोसेसर में g++ और MinGW का पता कैसे लगा सकता हूं?




c-preprocessor gnu (2)

GCC के लिए:

#ifdef __GNUC__

न्यूनतम के लिए:

#ifdef __MINGW32__

x86_64-w64-mingw32-gcc __MINGW32__ और __MINGW64__ दोनों को परिभाषित करता है।

मैं कुछ ऐसा करना चाहता हूं:

#ifdef GCC
#define GetFunctionName() string("My function name is ") + __PRETTY_FUNCTION__;
#endif

चूंकि मैं सुंदर PRETTY_FUN का उपयोग करना चाहता हूं, इसलिए यह केवल गन्नू द्वारा समर्थित है जहां तक ​​मुझे पता है कि मुझे यह पता लगाने की आवश्यकता है कि क्या मैं g ++ और MinGW के लिए संकलन कर रहा हूं, तो मैं यह कैसे कर सकता हूं? मैं अनुमान लगा रहा हूं कि मुझे जानने की जरूरत है कि कंपाइलर की प्रीप्रोसेसर परिभाषाएं हैं, जैसे मैंने नीचे Microsoft के लिए किया था।

#ifdef WIN32
#define LogFuncBegin() gLogger.FuncBegin( __FUNCTION__ );
#define LogFuncEndSuccess() gLogger.FuncEndSuccess( __FUNCTION__ );
#endif

मैं C ++ प्रीप्रोसेसर में g ++ और MinGW का पता कैसे लगा सकता हूं?


आप इसका उपयोग कर सकते हैं:

#ifdef __GNUC__
#ifdef __MINGW32__

अतिरिक्त मैक्रो के लिए आप इस पेज में दिलचस्पी ले सकते हैं जो अन्य संकलक मैक्रोज़ दिखाता है





gnu