匿名枚举

在定义枚举的同时声明变量,如果不需要在以后声明这种类型的其他变量,就可以省略枚举类型。例如:

enum {Monday, Tuesday, Wednesday, Thursday,  

Friday, Saturday, Sunday} yesterday, today, tomorrow;

这个语句声明了3个变量,它们的值可以假设为从Monday到Sunday。由于没有指定枚举类型,所以不能引用它。以后也不能再声明这种枚举的其他变量,因为这么做需要重复定义,这是不允许的。

匿名枚举类型的一个常见应用是作为定义整数常量的另一种方式。例如:

enum {feetPerYard = 3, inchesPerFoot = 12, yardsPerMiles= 1760 };

这个枚举包含了3个已显式赋值的枚举成员。尽管没有声明这种已枚举的数据类型的变量,但仍可以在算术表达式中使用其中的枚举成员。可以编写下面的语句:

std::cout << std::endl << "Feet in 5 miles = " << 5 * feetPerYard * yardsPerMile;

枚举成员会自动转换为int类型

你可能感兴趣的:(匿名枚举)