【发布时间】:2012-10-11 23:30:51
【问题描述】:
惊讶地发现 C# Enum 定义似乎允许在末尾添加一个额外的逗号(至少在 VS2010 中)。
例如:
public enum EnumTest1
{
Abc,
Def,
}
即“Def”的末尾有一个逗号。 只是想知道这是设计允许的,还是疏忽。 (这可能很高兴,因为如果它是一个错误,则可能无法保证像上面这样的代码将在未来的 C# 版本中编译)。
【问题讨论】:
-
对不起,这是重复的:stackoverflow.com/questions/792753/…(也许不是?,那篇文章是针对 C 而不是 C#。)
-
这没有什么问题,同样的行为存在于像 new obj {a = 1, b = 2,}这样的语法中
-
这仍将在 Visual Studio 2012 中编译,目前已测试:D
-
实际上,这是 stackoverflow.com/questions/2147333/… 和 stackoverflow.com/questions/5126483/… 的一个副本。抱歉,我没有更彻底地搜索。
-
我很惊讶它被允许排除它,至少应该有一个强制执行它的选项。 (至于为什么对该主题有多种解释)
标签: c#