是否可以写类似下面的东西?
public const string[] Titles = { "German", "Spanish", "Corrects", "Wrongs" };
最佳答案
是的,但是你需要声明它readonly
而不是const
:
public static readonly string[] Titles = { "German", "Spanish", "Corrects", "Wrongs" };
原因是 const
只能应用于其值在编译时已知的字段。您显示的数组初始值设定项不是 C# 中的常量表达式,因此它会产生编译器错误。
声明它 readonly
解决了这个问题,因为该值直到运行时才被初始化(尽管它保证在第一次使用数组之前已经初始化)。
根据您最终想要实现的目标,您还可以考虑声明一个枚举:
public enum Titles { German, Spanish, Corrects, Wrongs };
关于c# - 声明一个常量数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5142349/