Auf den Wert einer Präprozessor-Makrodefinition zugreifen
Wenn ich unter GCC_PREPROCESSOR_DEFINITIONS ein Makro "FOO = bar" hinzufüge (oder Präprozessor-Makros, wenn Sie XCode verwenden), wie kann ich am besten auf den Wert von "FOO" zugreifen?
Zurzeit benutze ich das ungeschickte:
#define MACRO_NAME(f) #f
#define MACRO_VALUE(f) MACRO_NAME(f)
#ifdef FOO
NSLog(@"%s", MACRO_VALUE(FOO));
#else
NSLog(@"undefined");
#endif
Dies wird "bar" ausgeben
Sicher, es muss einen besseren / saubereren Weg geben?