我在config.h 中定义了一堆预处理器配置选项。我像这样使用它们:
#if CONFIG_OPTION1
/* do some stuff */
#endif
config.h包含他们的定义:
#define CONFIG_OPTION1 _DEBUG
#define CONFIG_OPTION2 _DEBUG || (NDEBUG && _WIN64)
...
以上不起作用。我想根据配置(调试、发布等)和/或其他定义打开和关闭这些配置选项。如果我这样做,它也不起作用:
#define CONFIG_OPTION1 defined(_DEBUG) || defined(NDEBUG)
#if CONFIG_OPTION1
即使条件看起来应该满足,我也永远不会进入。当我写#if defined(_DEBUG)
它时,它工作正常,但#if
使用宏作为条件失败。我怎样才能解决这个问题?