我怎样才能在C#中获得相当于C ++的“const”?

这个问题在这里已经有了答案:

  • const和readonly有什么区别? 31个答案

  • 你想使用readonly修饰符

    private readonly static ReadOnlyCollection<string> _ExtensionsOfInterest = new ReadOnlyCollection<string>()
    {
        ".doc", ".docx", ".pdf", ".png", ".jpg"
    };
    

    编辑

    只是注意到ReadOnlyCollection类型不允许空的构造函数或提供括号中的列表。 您必须在构造函数中提供列表。

    所以你可以把它写成只读的普通列表。

    private readonly static List<string> _ExtensionsOfInterestList = new List<string>()
    {
        ".doc", ".docx", ".pdf", ".png", ".jpg"
    };
    

    或者如果你真的想使用ReadOnlyCollection,你需要在构造函数中提供上面的正常列表。

    private readonly static ReadOnlyCollection<string> _ExtensionsOfInterest = new ReadOnlyCollection<string>(_ExtensionsOfInterestList);
    
    链接地址: http://www.djcxy.com/p/21219.html

    上一篇: How can I get the equivalent of C++'s "const" in C#?

    下一篇: difference between ReadOnly and Const?