在 C++ 中定义带条件的宏
Define macros with condition in C++
我在 SO 上找到了一些现有的答案,但实际上我不明白一切 there 是如何工作的。
基本上,我想在if/switch条件下定义一个宏
if (condition)
{
#define SOME_MACRO
}
所以,如果某些条件为真,就会定义一些新的宏。
但是,就目前而言,它只是定义了宏。我知道这不是真正应该如何完成的,但对此没有正常的解释。
您不能像这样混合使用宏和代码。宏都是在你的代码编译之前处理的,它只是一个方便的功能,可以节省输入(并使代码更易于阅读)。
例如条件有一个宏语法,你可以这样做:
#if Condition
#define X
#endif
有条件地定义宏。
我在 SO 上找到了一些现有的答案,但实际上我不明白一切 there 是如何工作的。
基本上,我想在if/switch条件下定义一个宏
if (condition)
{
#define SOME_MACRO
}
所以,如果某些条件为真,就会定义一些新的宏。 但是,就目前而言,它只是定义了宏。我知道这不是真正应该如何完成的,但对此没有正常的解释。
您不能像这样混合使用宏和代码。宏都是在你的代码编译之前处理的,它只是一个方便的功能,可以节省输入(并使代码更易于阅读)。
例如条件有一个宏语法,你可以这样做:
#if Condition
#define X
#endif
有条件地定义宏。