【发布时间】:2014-05-22 20:45:57
【问题描述】:
解压可变参数宏有什么技巧吗?例如,
#define READ(...) 表示逐个读取参数
READ(a, b, c) 将被解压为read(a); read(b); read(c)
【问题讨论】:
-
你为什么首先使用宏?为什么不用可变参数模板参数可以很容易地做到这一点?
-
同意。这对于可变参数模板来说是微不足道的。如果宏是绝对必要的,比如
BOOST_PP_SEQ_FOR_EACH。 -
这里的 read(a) 不是声明。它是定义函数或类的宏。
标签: c++ variadic-macros