1

我在执行此代码时遇到了一些问题:

#if TRACE
            dbgLog = new LogInfo( "PlatypusCE" );
#endif   

即使“TRACE”在上面被注释掉了,就在一大块一般性评论之后,这种情况还是发生了:

//#define TRACE

一旦我在它下面添加了这个:

#undef TRACE

......所以它是:

//#define TRACE
#undef TRACE

...不过,它可以按需要工作(“#if TRACE”代码不执行)。

是否真的有必要取消定义尚未定义的东西(被注释掉)?这似乎很奇怪。

4

2 回答 2

3

默认情况下,在配置文件 Debug 和 Release 中,Visual Studio 将定义TRACE常量。您可以在项目设置中更改此行为(在Build选项卡中)。该DEBUG常量类似,默认情况下在 Debug 配置文件中处于活动状态(但不是 Release)。

于 2014-08-25T22:16:04.783 回答
2

TRACE是默认为调试版本定义的两个常量之一:

痕迹

于 2014-08-25T22:16:56.140 回答