【发布时间】:2014-04-23 12:37:27
【问题描述】:
当我们可以从 Debug 和 Release 更改解决方案配置时,我们是否有可能让某些代码块被编译器忽略, 这也意味着那些代码只能在Debug环境中运行?
【问题讨论】:
标签: c#
当我们可以从 Debug 和 Release 更改解决方案配置时,我们是否有可能让某些代码块被编译器忽略, 这也意味着那些代码只能在Debug环境中运行?
【问题讨论】:
标签: c#
您可以使用preprocessor directives 喜欢:
#if DEBUG
// your code here
#endif
【讨论】:
是的,您可以通过多种方式做到这一点:
在调试版本中,DEBUG 和 TRACE 符号都是默认定义的。在 Release 版本中,只定义了 TRACE。
#if DEBUG // do something in Debug builds only #endif
您可以在方法上应用 Conditional 属性(请参阅http://msdn2.microsoft.com/en-us/library/system.diagnostics.conditionalattribute.aspx)
您可以使用仅在调试版本中执行的 Debug.xxx 方法
【讨论】:
确实可以。使用#if DEBUG 语句仅在配置处于调试模式时运行。
即:
#if DEBUG
// do some debug specific stuff
#endif
【讨论】: