可变参数宏
添加时间:2013-8-12 点击量:
在我们的开辟测试阶段不成避免的要进行打印调试,在生成release的版时又须要去除打印信息,
我们可以采取前提编译的体式格式解决这个题目,具体办法如下:
#ifndef DEBUG_2012_06_06
#define DEBUG_2012_06_06
#endif
#ifdef DEBUG_2012_06_06
#define myPrint(str, ...) {\
printf(str, ##__VA_ARGS__);\
}
#else
#define myPrint(str, ...)
#endif
如许我们在打印输出的处所应用我们本身的myPrint宏就像应用printf函数一样应用,
在生成release版是只要注释#define DEBUG_2012_06_06就能去除我们所有的打印信息,妙哉!
我们永远不要期待别人的拯救,只有自己才能升华自己。自己已准备好了多少容量,方能吸引对等的人与我们相遇,否则再美好的人出现、再动人的事情降临身边,我们也没有能量去理解与珍惜,终将擦肩而过。—— 姚谦《品味》
在我们的开辟测试阶段不成避免的要进行打印调试,在生成release的版时又须要去除打印信息,
我们可以采取前提编译的体式格式解决这个题目,具体办法如下:
#ifndef DEBUG_2012_06_06
#define DEBUG_2012_06_06
#endif
#ifdef DEBUG_2012_06_06
#define myPrint(str, ...) {\
printf(str, ##__VA_ARGS__);\
}
#else
#define myPrint(str, ...)
#endif
如许我们在打印输出的处所应用我们本身的myPrint宏就像应用printf函数一样应用,
在生成release版是只要注释#define DEBUG_2012_06_06就能去除我们所有的打印信息,妙哉!