开发者社区 问答 正文

声明一个const数组

是否可以编写类似于以下内容的内容?

public const string[] Titles = { "German", "Spanish", "Corrects", "Wrongs" };

展开
收起
保持可爱mmm 2020-01-14 15:03:07 413 分享 版权
1 条回答
写回答
取消 提交回答
  • 是的,但是您需要声明它readonly而不是const:

    public static readonly string[] Titles = { "German", "Spanish", "Corrects", "Wrongs" };

    原因是const只能应用于其值在编译时已知的字段。您显示的数组初始值设定项在C#中不是常量表达式,因此会产生编译器错误。

    声明它readonly解决了这个问题,因为直到运行时才初始化该值(尽管可以保证在第一次使用该数组之前就已对其进行了初始化)。

    根据最终要实现的目标,您还可以考虑声明一个枚举:

    public enum Titles { German, Spanish, Corrects, Wrongs };

    问题来源于stack overflow

    2020-01-14 15:03:29
    赞同 展开评论
问答地址: