是否保证只有未初始化值的Enum
的数值从零开始并按定义的顺序递增1?
答案 0 :(得分:2)
是。来自文档:
如果您没有为其指定初始值设定项 一个成员,Visual Basic初始化它 要么为零(如果是第一个 成员列表中的成员)或值 比一个更大一个 紧接在会员之前。
http://msdn.microsoft.com/en-us/library/8h84wky1(VS.80).aspx
答案 1 :(得分:0)
是。如果你明确地设置一个,那么后面的那些也会增加。
这允许你拥有:
class Program
{
static void Main(string[] args)
{
Console.WriteLine((int)Seasons.Spring);
Console.WriteLine((int)Seasons.Summer);
Console.WriteLine((int)Seasons.Autumn);
Console.WriteLine((int)Seasons.Fall);
Console.WriteLine((int)Seasons.Winter);
Console.Read();
}
}
public enum Seasons
{
Spring,
Summer,
Autumn,
Fall = Autumn,
Winter
}
输出:0 1 2 2 3
它们将具有值0,1,2,3和Fall将具有与Autumn相同的值。
抱歉,我的示例是在C#中,但同样适用于VB.net