枚举

维基百科,自由的百科全书
跳转至: 导航搜索

数学计算机科学理论中,一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数。这两种类型经常(但不总是)重叠。

枚举是一个被命名的整型常数的集合,枚举在日常生活中很常见,例如表示星期的SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY就是一个枚举。 枚举的说明与结构和联合相似,其形式为:

        enum枚举名{ 
             标识符[=整型常数], 
             标识符[=整型常数], 
             ... 
             标识符[=整型常数], 
        }枚举变量; 

如果枚举没有初始化,即省掉"=整型常数"时,则从第一个标识符开始,顺次赋给标识符0, 1, 2, ...。但当枚举中的某个成员赋值后,其后的成员按依次加1的规则确定其值。例如下列枚举说明后, x1, x2, x3, x4的值分别为0, 1, 2, 3。

   enum string{x1, x2, x3, x4}x; 

当定义改变成:

    enum string 
    { 
        x1, 
        x2=0, 
        x3=50, 
        x4, 
    }x; 

则x1=0, x2=0, x3=50, x4=51 注意:

  1. 枚举中每个成员(标识符)结束符是",", 不是";",最后一个成员可省略","。
  2. 初始化时可以赋负数,以后的标识符仍依次加1。
  3. 枚举变量只能取枚举说明结构中的某个标识符常量。

例如:

    enum string 
    { 
        x1=5, 
        x2, 
        x3, 
        x4, 
    }; 
   enum string x=x3; 

此时,枚举变量x3实际上是7。