我有一个宏 TYPELIST,它接受可变参数。我想要类似的东西
typedef TYPELIST(A
,B
,C
,D
#ifdef BLA_
,E
#endif
,F)
这与 gcc 完美配合。但是,当我尝试使用 MSVC 编译它时,它会将 ifdef 和 endif 解析为宏参数。我知道一种方法是将宏调用放在 ifdef 中。但是,如果我有一个巨大的列表,并且如果我想根据定义的不同宏包含不同的类,那将变得乏味。为什么这在 gcc 中有效,而不是在 MSVC 中有效?