很惊讶地看到C#Enum定义似乎最后允许额外的逗号(至少在VS2010中)。
e.g。 :
public enum EnumTest1
{
Abc,
Def,
}
即。在" Def"结束时有一个逗号。 只是想知道这是否被设计所允许,或者是疏忽。 (这可能很有用,因为如果它是一个bug,可能无法保证上面的代码将在未来的C#版本中编译)。
答案 0 :(得分:8)
设计允许。同样,您也可以在初始值设定项中使用尾随逗号。例如:
var ints = new[] { 2, 3, 4, 3, };
var obj = new SomeClass { Prop1 = "foo", Prop2 = "bar", };
我认为允许尾随逗号会使创建自动生成的代码变得更加容易,因为在代码中输出列表时不必添加最后列表逻辑。