我需要实现这个:
static class MyStaticClass
{
public const TimeSpan theTime = new TimeSpan(13, 0, 0);
public static bool IsTooLate(DateTime dt)
{
return dt.TimeOfDay >= theTime;
}
}
theTime
是一个常量(说真的:-),就像 π
一样,例如,在我的例子中,从设置中读取它是没有意义的。我希望它被初始化一次并且永远不会改变。
但 C# 似乎不允许用函数(构造函数就是)初始化常量。如何克服这个问题?
最佳答案
使用readonly
代替const
可以初始化并且之后不能修改。这就是您要找的吗?
代码示例:
static class MyStaticClass
{
static readonly TimeSpan theTime;
static MyStaticClass()
{
theTime = new TimeSpan(13, 0, 0);
}
}
关于c# - 如何在 C# 中将类实例声明为常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6231253/