也许是重复的-我只是想不出要用什么谷歌...
在C#中,是否可以像变量一样使用DEBUG常量,例如
Boolean debugging = DEBUG;
我想避免这种情况:
#if DEBUG
Boolean debugging = true;
#else
Boolean debugging = false;
#endif
谢谢!
答案 0 :(得分:2)
不是。典型的方式是您明确不想做的方式。但是,如果很难设置为不使用#if
,则可以使用ConditionalAttribute进行类似的操作。例如:
public class Program {
public static void Main(String[] args) {
Boolean debug = false;
CheckForDebug(ref debug);
Console.WriteLine("debug = " + debug);
}
[Conditional("DEBUG")]
public static void CheckForDebug(ref Boolean debug)
{
debug = true;
}
}
除了您在此处提出的特定问题之外,这可能对您有用。 ConditionalAttribute
对于确保仅在定义DEBUG
(或任何预处理器符号)时才运行返回void的方法很有用。
答案 1 :(得分:0)
典型方法是像这样使用它:
#if DEBUG
Boolean debugging = true;
#else
Boolean debugging = false;
#endif
干杯!