为什么会返回错误?
public class Class1
{
public enum MyEnum
{
First,
Second,
Third
}
public MyEnum[] myEnum;
public Class1()
{
myEnum =
{
MyEnum.First,
MyEnum.First,
MyEnum.First
};
}
}
虽然没有:
public class Class1
{
enum MyEnum
{
First,
Second,
Third
}
public MyEnum[] myEnum =
{
MyEnum.First,
MyEnum.First,
MyEnum.First
};
public Class1()
{
}
}
我想第一种方式,所以我可以将初始化分离到构造函数。这怎么做得好?
答案 0 :(得分:9)
使用以下语法:
public Class1()
{
myEnum = new MyEnum[]
{
MyEnum.First,
MyEnum.First,
MyEnum.First
};
}
答案 1 :(得分:4)
短符号只能在声明字段时使用。
否则,必须使用更长的符号:
myEnum = new MyEnum[] { MyEnum.First };
在此处阅读有关阵列初始值设定项的更多信息:http://msdn.microsoft.com/en-us/library/aa664573(v=vs.71).aspx