- 默认情况下,枚举第一个值是0, 可显式为枚举赋值。
- 可以定义枚举的基础类型,如enum E : short {}, sizeof(E) == 2;默认情况下是int。
- 枚举的继承链:ValueType->Enum->enum
- 枚举类型和基础类型之间的转换都是显式的,0除外,因为存在从0代任何枚举类型的隐式转换。
- 枚举的ToString()会输出其枚举值的标识符、
- 从字符串转枚举:AEnumType a = (AEnumType)Enum.Parse(typeof(AEnumType), “flag”);可能失败,代码应包含异常处理机制。
- 可用Enum.IsDefined()检查一个值是否包含在一个枚举中。
- 为枚举添加FlagAttribute,可以使多个枚举值组合使用,形如:
[Flags]
public enum FileAttribute
{ReadOnly = 0x01,Hidden = 0x02,System = 0x04,Directory = 0x08,
}///
FileAttribute fa = FileAttribute.ReadOnly | FileAttribute.Hidden
fa.ToString(); // "ReadOnly, Hidden"FileAttribute fa2 = (FileAttribute)3;
fa2.ToString();//"ReadOnly, Hidden"
转载于:https://www.cnblogs.com/bangbang/archive/2011/05/06/2039245.html