3.3C#值类型之枚举(Enum)

枚举声明

所有枚举继承自 System.Enum类(继承自 System.ValueType)。

枚举类型 定义了一组常量值。

每个 enum 类型都有一个基础类型(必须是八种整型类型之一)。默认情况下,枚举常量的基础类型为 int,它们从 0 开始,并按定义常量顺序递增 1。

enum 枚举名:[基础类型] 
{
    //常量1,
    //常量2,
    //常量N
}

可以显式指定任何其它七种整数类型作为枚举类型的基础类型,还可以显式指定常量关联的整数值。

enum ErrorCode : ushort
{
    None = 0,
    Unknown = 1,
    ConnectionLost = 100,
    OutlierReading = 200
}

访问成员

枚举名.常量

枚举组合

枚举声明前面加上 [Flags] 特性。

常量对应的值应该是2的幂。

| 表示合并,& 表示交叉。

[Flags]
public enum Seasons
{
    None = 0,
    Summer = 1,
    Autumn = 2,
    Winter = 4,
    Spring = 8,
    All = Summer | Autumn | Winter | Spring
}

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/csharp/csharplang/7876.html

(0)
上一篇 2021年3月3日 15:50
下一篇 2021年3月4日 02:52

相关推荐

  • 3.4C#引用类型之类(Class)

    1.类声明 2.继承 派生类只能有一个直接基类。但是,因为一个基类本身可能继承自另一个类,所以一个类可能会间接继承多个基类。省略基类相当于从 object 类型继承。 派生类会隐式获取基类的所有成员(除了基类的静态构造函数、实例构造函数、析构函数),所以无需在派生类再书写继承过来的基类成员,但您还可…

    C#语言教程 2021年3月4日
    02980
  • 3.11C#类型之元组(ValueTuple)值类型和元组(Tuple)引用类型

    1.元组声明和初始化 元组提供了简洁的语法来将多个数据元素组合在一个轻型数据结构里。 通过声明 ( 和 ) 之间的成员的类型和名称来实例化元组。 2.访问成员 3.析构(Deconstruct)元组 析构的过程恰恰与元组的声明和初始化相反,析构是将已存在的元组析构成多个单独的变量…

    C#语言教程 2021年3月11日
    02840
  • 2.8C#函数成员之运算符(Operator)

    运算符声明 所有运算符都必须声明为 public 和 static。 隐式和显式运算符 implicit 或 explicit 关键字分别用于定义隐式转换或显式转换,定义转换的类型必须是该转换的源类型或目标类型,可用两种类型中的任何一种类型来定义两种用户定义类…

    C#语言教程 2021年2月8日
    0820

发表评论

登录后才能评论