一般的定义方式如下:
enum enum_type_name
{
ENUM_CONST_1,
ENUM_CONST_2,
...
ENUM_CONST_n
} enum_variable_name;
注意:
enum_type_name
是自定义的一种数据数据类型名,而
enum_variable_name
为
enum_type_name
类型的一个变量,也就是我们平时常说的枚举变量。实际上
enum_type_name
类型是对一个变量取值范围的限定,而花括号内是它的取值范围,即
enum_type_name
类型
的变量
enum_variable_name
只能取值为花括号内的任何一个值,如果赋给该类型变量的值
不在列表中,则会报错或者警告。
ENUM_CONST_1
、
ENUM_CONST_2
、
...
、
ENUM_CONST_n
,这些成员都是常量,也就是我们平时所说的枚举常量(常量一般用大写)。
enum
变量类型还可以给其中的常量符号赋值,如果不赋值则会从被赋初值的那个常量开始
依次加
1
,如果都没有赋值,它们的值从
0
开始依次递增
1
。如分别用一个常数表示不同颜
色:
enum Color
{
GREEN = 1,
RED,
BLUE,
GREEN_RED = 10,
GREEN_BLUE
}ColorVal
;
其中各常量名代表的数值分别为:
GREEN = 1
RED = 2
BLUE = 3
GREEN_RED = 10
GREEN_BLUE = 11