什么是Enum?

来源:百度知道 编辑:UC知道 时间:2024/05/22 05:20:01
我想知道下面语句的意思
Private Enum Files
ucsFileNew = 0
ucsFileSave = 2
ucsFilePrintPreview = 5
ucsFileExit = 7
ucsEditUndo = 0
ucsEditCut = 2
ucsEditAddMenu = 6
ucsEditSep = 7
ucsMainPopup = 3
End Enum
我是一个菜鸟,不懂

Enum 定义的是枚举变量。

变量和参数都可以定义为 Enum 类型。Enum 类型中的元素被初始化为 Enum 语句中指定的常数值。所赋给的值可以包括正数和负数,且在运行时不能改变。

你可以把它理解为一个常数集合。方便实用。最常用的地方是用作函数的参数类型。

假设有个GetSeason函数返回某月所在的季节:

不用枚举则定义为:
GetSeason(Month As Integer) As Integer
则参数Month取值1到12表示一到十二月,返回值1-4表示春夏秋冬四季。

但这样做程序可读性明显不佳。

使用枚举:
Enum Months
January = 1
February
March
April
May
June
July
August
September
October
November
December
End Enum

Enum Seasons
Spring = 1
Summer
Autumn
Winter
End Enum

则函数定义为:GetSeason(Month As Months) As Seasons
调用时可以写:
iSeason = GetSeason(August)
If GetSeason(August) = Spring Then Msgbox "你瞎说。"