在解决方案属性中,我将我的一个且唯一的项目的配置设置为“发布”。
在主程序的开头,我有这个代码,它显示“模式=调试”。
我在最顶部也有这两行:
#define DEBUG
#define RELEASE
我在测试正确的变量吗?
#if (DEBUG)
Console.WriteLine("Mode=Debug");
#elif (RELEASE)
Console.WriteLine("Mode=Release");
#endif
我的目标是根据调试与 Release模式为变量设置不同的默认值。
最佳答案
DEBUG
/_DEBUG
应该已经在 VS 中定义了。
删除代码中的 #define DEBUG
。在该特定构建的构建配置中设置预处理器。
它打印 "Mode=Debug"的原因是因为你的 #define
然后跳过了 elif
。
正确的检查方法是:
#if DEBUG
Console.WriteLine("Mode=Debug");
#else
Console.WriteLine("Mode=Release");
#endif
不要检查
RELEASE
。关于用于调试与发布的 C# if/then 指令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2104099/