C#-枚举

Posted 无憶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#-枚举相关的知识,希望对你有一定的参考价值。

一.分析过程
1.今天说说C#枚举,那什么事枚举?枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读。
在这里插入图片描述

2.枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。C# 枚举是值数据类型。换句话说,枚举包含自己的值,且不能继承或传递继承。枚举列表中的每个符号代表一个整数值,一个比它前面的符号大的整数值。默认情况下,第一个枚举符号的值是 0。
其中:
(1)enum_name 指定枚举的类型名称。
(2)enumeration list 是一个用逗号分隔的标识符列表。
如图所示:
在这里插入图片描述

3.在枚举中,枚举的真正强大之处是它们在后台会实例化为派生与基类System.Enum的结构。这表示可以对它们调用方法,执行有用的任务。注意因为。NET Framework的执行方式,在语法上把枚举当作结构不会造成性能损失。实际上,一旦代码编译好,枚举就成为基本类型,与int和float类似。

4.枚举是用户定义的整数类型。在声一个枚举时,要指定该枚举的实例可以包含的一组可接受的值。不仅如此,还可以给值指定易于记忆的名称。如果在代码的某个地方,要试图把一个不在可接受范围内的值赋予枚举的一个实例,编辑器就会报告一个错误。
从长远来看,创建枚举可以节省大量时间,减少许多麻烦。使用枚举比使用无格式的整数至少有如下3个优势:
(1)可以使代码更容易维护,有助于确保给变量指定合法的期望的值。
(2)使代码更清晰,允许用描述性的名称表示整数值,而不是用含义模糊,变化多端的数来表示。
(3)使代码更容易输入。在给枚举类型的实例赋值时,Visual Studio .NET DDE会通过IntelliSense弹出一个包含可接受值的列表框,减少了按键次数,并能够让我们回忆起可选的值。
5.在C 语言中,枚举类型是被当做 int 或者 unsigned int 类型来处理的,所以按照 C 语言规范是没有办法遍历枚举类型的。不过在一些特殊的情况下,枚举类型必须连续是可以实现有条件的遍历。

以上是关于C#-枚举的主要内容,如果未能解决你的问题,请参考以下文章

C语言中的枚举类型

C语言的枚举类型知识

C语言枚举和C++枚举的区别?enum class(C++11强类型枚举(Strongly-typed enums)强枚举 Scoped Enumerations)(C++98弱枚举类型)

C语言枚举和C++枚举的区别?enum class(C++11强类型枚举(Strongly-typed enums)强枚举 Scoped Enumerations)(C++98弱枚举类型)

C语言枚举和C++枚举的区别?enum class(C++11强类型枚举(Strongly-typed enums)强枚举 Scoped Enumerations)(C++98弱枚举类型)

C语言枚举类型是啥意思?