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