C# 中的枚举(enum)是一种值类型,用于定义变量的一组命名整数常量。除了基本的用法之外,C# 枚举还提供了许多高级和深度用法,可以帮助我们更有效地管理和使用常量集合。以下是一些 C# 枚举的深度用法:
1. Flags 属性
通过使用 [Flags] 属性,我们可以创建标志枚举,允许使用按位运算符组合多个枚举值。
[Flags]
enum Days
{
None = 0,
Sunday = 1,
Monday = 2,
Tuesday = 4,
Wednesday = 8,
Thursday = 16,
Friday = 32,
Saturday = 64
}
// 使用示例
Days weekdays = Days.Monday | Days.Tuesday | Days.Wednesday;
2. 自定义基础类型
默认情况下,枚举的基础类型是 int,但我们可以使用 : byte, : sbyte, : short, : ushort, : long, : ul