例如:
#define M(x) do { x++; f(x); } while(0)
#define M_ALL(...) do { ??? } while(0)
有没有办法在M_ALL
的每个参数上调用M
?
这样做:
M_ALL(x, y, z)
将扩展为:
do {
do { x++; f(x); } while(0);
do { y++; f(y); } while(0);
do { z++; f(z); } while(0);
} while(0)
1条答案
按热度按时间xlpyo6sf1#
如何使用X macro?(https://en.wikipedia.org/wiki/X_macro)。例如: