C# 高级特性与枚举详解
1. 枚举(Enums)
枚举用于指定一组命名的数值常量。在 C# 中,枚举成员必须与枚举类型名一起使用,这有助于解决命名冲突并使代码更清晰。
public enum Direction {North, East, West, South}
Direction walls = Direction.East;
默认情况下,枚举成员被分配整数常量 0、1、2 等。你也可以选择指定一个替代的数值类型作为枚举的基础,并为每个枚举成员显式指定值。
[Flags]
public enum Direction : byte {
North=1, East=2, West=4, South=8
}
Direction walls = Direction.North | Direction.West;
if((walls & Direction.North) != 0)
System.Console.WriteLine("Can't go north!");
[Flags]
属性是可选的,它告知运行时枚举中的值可以进行位组合,并在调试器或向控制台输出文本时进行相应的解码。
System.Enum
类型还提供了许多有用的静态方法,用于确定枚举的基础类型、检查特定值是否受支持、从字符串常量初始化枚举、检索有效值列表等。