我想在C++中创建一个宏,它可以执行以下操作。
#define SETUP_BULK(...) \
SETUP_HELPER(__VA_ARG__) \ // repeat this for all __VA_ARGS__
这是可能的吗?我在迭代__VA_ARGS__
时查找了其他问题,但无济于事。
我不能使用宏以外的任何东西,否则就会违背我的目标--用我的自定义JSON解析器动态地设置结构。
例如:
SETUP_BULK(Struct_A, Struct_B, Struct_C)
会变成
SETUP_HELPER(Struct_A);
SETUP_HELPER(Struct_B);
SETUP_HELPER(Struct_C);
1条答案
按热度按时间b4lqfgs41#
如果您坚持在宏级别执行此操作,最简单的解决方案是使用Boost.Preprocessor:
Demo