C#:二维三维图形绘制工程实例宝典
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1.3 枚举类型

枚举类型是自System.Enum派生的一种独特的值类型,它用于声明一组命名的常数。每种枚举类型均有一种基础类型,此基础类型可以是除char类型以外的任何类型。

枚举元素的默认基础类型为int。默认情况下,第一个元素的值为0,后面每个枚举元素的值依次递增1。例如:

        enum WeekDay{ Sun , Mon , Tue , Wed , Thu , Fri , Sat }

在此枚举中,Sun的值为0,Mon为1,Tue为2,依此类推。也可以直接给枚举元素赋值来改变这种默认情况,而且不同元素的值可以相同。如:

        enum WeekDay{ Sun=1 , Mon , Tue , Wed=Sun , Thu , Fri , Sat }

在此枚举中,强制第一个枚举元素Sun的值为1,Mon为2,Tue为3,而Wed又强制为1,Thu为2,依此类推。枚举元素Sun和Wed、Mon和Thu、Tue和Fri的值相同。

如果枚举元素的数据类型不是int型,则可以如下方式进行声明。

        enum Color : long { Red , Green , Blye };

[示例Example1_1_2] 使用枚举

        using System;
        public class TestEnum
        {
      enum Range : long{ Max=2147483648L , Min=255L }
      public static void Main()
      {
          long a=(long) Range.Max;
          long b=(long) Range.Min;
          Console.WriteLine("Max={0} , Min={1}", a , b);
      }
        }
        下面再看一个例子:
        enum Color { Red=Green , Green , Blue }

枚举元素Red的值由Green决定,而枚举元素Green的值又由Red决定,从而形成一个循环,这将产生错误。