在发布代码C ++中消失调试代码

时间:2015-06-04 13:39:29

标签: c++ c c-preprocessor

我的基本目标,正如标题所示,是在编译之前花费在发布代码中删除调试代码。现在,我正在使用_Debug(或自定义名称)宏来保护调试行,它可以正常工作。

但是,我不想为每个函数/操作调用编写每处理器保护,就像在C ++调试文件中编写一样。

  

编辑:感谢您的回复,如果我可以创建一个宏观功能来保护自己,同时花费如下:DBG_PRINT(fname,msg)\ #ifdef _Debug\ fprintf(fname, msg)\ #endif

请建议我一些干净的单线路出路。

谢谢,快乐编码

1 个答案:

答案 0 :(得分:1)

预处理器指令是唯一的方法,你可以清理代码并避免ifdef调试放在代码中的任何地方,如果你用一个具有body ifdefined的常用方法包装调试调用,但是没有'没有宏或预处理器检查就可以做到这一点。