修饰符“XXXX”对此项目无效

时间:2013-02-26 10:39:38

标签: c# static

有没有人知道我为什么会遇到这些错误:

  

修饰符'static'对此项无效

     

修饰符'readonly'对此项无效

在以下代码的第3行:

public class YYY
{
    private static readonly struct ZZZ
    {
        private int x = 0;
        private int y = 0;
        private int z = 0;
    }
}

当我研究这个问题时,我只找到了我不太了解的接口的答案,但我只想在我的班级中创建一个静态的只读结构字段。

1 个答案:

答案 0 :(得分:1)

staticreadonly都是仅用于实现对象的修饰符,而不是定义中的修饰符。当您声明将要使用的ZZZ结构对象时,您可以添加修饰符staticreadonly

public class YYY
{
    private struct ZZZ
    {
        private int x = 0;
        private int y = 0;
        private int z = 0;
    }

    private static readonly ZZZ myZZZ = new ZZZ(); //The declaration of a ZZZ instance.
}