深刻领悟微软宏微软
#define B_FUCK_MSVC(args) implementation of B
#define B(...) EXPAND(B_FUCK_MSVC(__VA_ARGS__))
//其中EXPAND的定义如下
#define EXPAND(...) __VA_ARGS__
上面是核心.一定要深刻理解.
参考在这里
变长扩展用法:
#define log(format, ...) printf("LOG: " format __VA_OPT__(,) __VA_ARGS__)
log("%d%f", 1, .2); // -> printf("LOG: %d%f", 1, .2);
log("hello world"); // -> printf("LOG: hello world");
log("hello world", ); // -> printf("LOG: hello world");
浙公网安备 33010602011771号