如何:声明枚举 (Visual Basic)
你要使用类或模块的声明节中的 Enum
语句创建枚举。 你不能在方法中声明枚举。 若要指定适当的访问级别,请使用 Private
、Protected
、Friend
或 Public
。
类型 Enum
具有名称、基础类型和一组字段,每个字段表示一个常量。 名称必须是有效的 Visual Basic .NET 限定符。 基础类型必须是整数类型之一,即 Byte
、Short
、Long
或 Integer
。 Integer
是默认值。 枚举始终为强类型,不能与整数类型互换。
枚举不能具有浮点值。 如果为枚举分配了带 Option Strict On
的浮点值,则会导致编译器错误。 如果 Option Strict
为 Off
,值会自动转换为 Enum
类型。
有关名称以及如何使用 Imports
语句使名称限定不必要的信息,请参阅枚举和名称限定。
声明枚举
编写一个包含代码访问级别、
Enum
关键字和有效名称的声明(如以下示例所示)其中每个声明都用来声明一个不同的Enum
。Private Enum SampleEnum SampleMember End Enum Public Enum SampleEnum2 SampleMember End Enum Protected Enum SampleEnum3 SampleMember End Enum Friend Enum SampleEnum4 SampleMember End Enum Protected Friend Enum SampleEnum5 SampleMember End Enum
定义枚举中的常量。 默认情况下,枚举中的第一个常量被初始化为
0
,后续常量被初始化为比上一个常量多 1 的值。 例如,以下枚举Days
包含一个名为Sunday
的常量,其值为0
,一个名为Monday
的常量,其值为1
,一个名为Tuesday
的常量,其值为2
,以此类推。Public Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum
可以使用赋值语句将值显式分配给枚举中的常量。 你可以分配任何整数值,包括负数。 例如,你可能希望用值小于零的常量表示错误条件。 在下面的枚举中,为
Invalid
常量显式分配了值–1
,并且为Sunday
常量分配了值0
。 因为它是枚举的第一个常量,因此Saturday
也被初始化为值0
。Monday
的值为1
(比Sunday
的值多 1);Tuesday
的值为2
,以此类比。Public Enum WorkDays Saturday Sunday = 0 Monday Tuesday Wednesday Thursday Friday Invalid = -1 End Enum
将枚举声明为显式类型
使用
As
子句指定枚举的类型,如以下示例所示。Public Enum MyEnum As Byte Zero One Two End Enum