我项目的某些部分在发布模式下不起作用。我可以使用printf
进行检查,但不会打印任何内容。我将通过以下代码向您展示:
void SNKsomething::vGetState()
{
#ifdef SNK_STH
for(int i = 0; i < 2; i++)
{
printf("sth\n');
}
此外,
SNK_STH
在文件Globals.h中定义如下#ifdef _DEBUG // in Project properties
#define SNK_STH
#else
// .....
因此,我看不到我在发布模式下打印的内容。我想知道我必须在VS-2008的项目属性中对_DEBUG做一些事情。是不是
最佳答案
_DEBUG是预处理器宏。如果右键单击属性并转到c / c ++,则预处理器是选项之一。
发行版和调试的预处理器定义不同。如果将SNK_STH添加到版本预处理器宏中,您将看到您的printf。
如果要在调试和发行版中都看到代码,请考虑将其从ifdef中拉出。
关于c++ - vs 2008中的#ifdef _DEBUG发行模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13409845/