枚举是一个特殊的值类型,它可以让你指定一组命名的数值常量。
public enum BorderSide
{
top,
right,
bottom,
left
}
BorderSide borderTop = BorderSide.top;
bool isTop = (borderTop == BorderSide.top);//true
底层原理
- 每个枚举都对应一个底层的整型数值(Enum.GetUnderlyingType())
- 默认基础类型是int
- 默认第一个值是0,后续没项都递增1
- 也可以指定其它类型(可以是除char之外的任意整型),例如byte:
public enum BorderSide:byte { top, right, bottom, left } - 也可以显示指定枚举成员的值
public enum BorderSide:byte { top=5, right=10, bottom=top, left=right } - 还可以显示指定某些成员的值,未显示赋值的成员将紧接着它前面已赋值的成员递增
public enum BorderSide : byte { top = 5, right, //6 bottom = 14, left //15 }
flags
to do...