Fel*_*bek 37 c++ compilation visual-studio-2010 visual-studio
我的程序中有调试输出,如下所示:
#define DEBUG
...
#ifdef DEBUG
std::cout << "[RE_words] " << m_re << std::endl;
#endif
Run Code Online (Sandbox Code Playgroud)
并DEBUG在我的程序中手动定义.当我发布版本时,我总是注意到这一行.在Visual Studio中,还有用于调试和发行版本的配置,它们处理用于编译的命令行等.我还可以使用配置"Debug"自动定义DEBUG到编译器吗?怎么样?
小智 5
我也认为我只需要查看预处理器属性并删除 _DEBUG。如果您选择调试运行时库选项之一,Visual Studio 会尝试通过设置 _DEBUG 来提供帮助。
在项目属性页Configuration Properties\C/C++\Code Generation上,为运行时库选择的选项会影响多个定义。选择调试库(/MTd或/MDd)时,会设置_DEBUG定义。
有关交换机的详细信息,请参阅MSDN /MD、/MT ...。有几个#define是根据这些选项设置的。当你在包含任何头文件之前试图找到谁设置了 #define 时,它们是非常不可见的!