c# - 检测 DEBUG、RELEASE 和我自己的模式 C#

标签 c# .net visual-studio debugging configuration

我有 DEBUG、RELEASE 和 MYMODE 配置模式。我怎样才能检测到它们?

#if DEBUG
#endif

只检测 DEBUG 和其他任何东西,但不检测 RELEASE 和 MYMODE 之间的区别。 我该怎么做?

更多信息:

我在想这样的事情:

#if DEBUG
#elif RELEASE
#elif MYMODE

但如果我有 RELEASE 或 MYMODE,代码的所有部分都是灰色的,只有 DEBUG 模式的 DEBUG 部分是彩色的。我也试过了

#define MYMODE

但是对于这个,MYMODE 始终为真并不代表设置了什么模式。

最佳答案

首先,您可以在#if 中使用 bool 运算符:

#if DEBUG || MYMODE
…
#endif

其次,您可以使用 #else#elif 来分解事物...

#if DEBUG
// Debug only
#elif MYMODE || RELEASE
// In either release or MYMODE
#else
// Otherwise
#endif

这两者的结合涵盖了大多数用例。

关于c# - 检测 DEBUG、RELEASE 和我自己的模式 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51474571/

相关文章:

c# - Linq:如何按多对多关系分组?

javascript - 无法从 Asp.NET 中的 C# 调用 javascript 函数

c# - 通过拖放移动

c# - 使用 .NET 框架监视目录中文件更改的可靠方法

c# - LINQ 使用 .ToDictionary 而不使用 .Select

c# - ASP.NET MVC5 每个 Razor 页面在第一次加载时非常慢

c# - 节点图编辑器

c# - 游戏开发 - 避免闪烁

python - 在 Visual Studio 2017 中使用 Pybind11 for Python 构建 CPP 时出现编译错误

c - 查找文件操作的 CPU 使用率