有没有办法为整个命名空间定义一个常量,而不仅仅是在一个类中?例如:
namespace MyNamespace
{
public const string MY_CONST = "Test";
static class Program
{
}
}
给出如下编译错误:
预期的类,委托,枚举,接口或结构
答案 0 :(得分:87)
我相信这是不可能的。但是你可以创建一个只有常量的类。
public static class GlobalVar
{
public const string MY_CONST = "Test";
}
然后像
一样使用它class Program
{
static void Main()
{
Console.WriteLine(GlobalVar.MY_CONST);
}
}
答案 1 :(得分:11)
答案 2 :(得分:2)
不,没有。把它放在静态类或枚举中。
答案 3 :(得分:0)
如果您还添加了“使用静态”,则可以在其他类中使用常量:
using static MyNameSpace.MyGlobals;
namespace MyNameSpace {
public static class MyGlobals{
public const bool SAVE_LOGSPACE = true;
public static readonly DateTime BACKTEST_START_DATE = new DateTime(2019,03,01);
}