.NET Enumeration allows comma in the last field

后端 未结 5 1522
后悔当初
后悔当初 2020-11-27 06:13

Why is this .NET enumeration allowed to have a comma in the last field?
Does this have any special meaning?

[FlagsAttribute]
public enum DependencyProper         


        
5条回答
  •  失恋的感觉
    2020-11-27 06:36

    It has no special meaning, just the way the compiler works, it's mainly for this reason:

    [FlagsAttribute]
    public enum DependencyPropertyOptions : byte
    {
               Default = 1,
               ReadOnly = 2,
               Optional = 4,
               DelegateProperty = 32,
               Metadata = 8,
               NonSerialized = 16,
               //EnumPropertyIWantToCommentOutEasily = 32
    }
    

    By comment request: This info comes straight out of the C# Specification (Page 355/Section 17.7)

    Like Standard C++, C# allows a trailing comma at the end of an array-initializer. This syntax provides flexibility in adding or deleting members from such a list, and simplifies machine generation of such lists.

提交回复
热议问题