C++/C 枚举类型允许我们定义特定用途的一组符号常量,它标明这种类型的变量可以取值的范围。格式如下:
enum <枚举类型名> {<枚举表>};
即, enum user_define_name { const_var1, const_var2, ……};
1. const_var 可直接赋值;
2. 不指定值则第一个标识符值为0,后面的标识符将比前面的标识符依次大1;
3. C中,枚举类型的内存大小等于sizeof(int), 但在标准C++中,枚举型的底层表示并非必须是一个int, 它可以更大或更小;
4. 用户可以把某些枚举常量初始化为相等的常量,如enum ABC{A=1, B=1, C=10}; 这可能在某些特定应用中有用;
5. 枚举类型可以是匿名的,匿名的枚举类型就相当于直接定义的const符号常量。
【建议】
使用匿名枚举来定义程序中出现的相关常量集合是一个好主意,它可以取代宏常量和const符号常量。例,
enum
{
MAX_SIGNALNUM = 128,
MAX_STACK = 8192
}