【知识点:枚举类型】
● 枚举类型(enumeration)是 C++ 中的一种派生数据类型,它是由用户定义的若干枚举常量的集合。
● 枚举元素作为常量,它们是有值的。C++ 编译时,依序对枚举元素赋整型值 0,1,2,3,…。
下面代码的结果,是依据国际标准及一些传统中的“星期日是一周的第一天”进行声明枚举类型 enum Week{SUN,MON,TUE,WED,THU,FRI,SAT}; 并依枚举元素的整型值进行计数而得出的。
#include <iostream>
using namespace std;enum Week{SUN,MON,TUE,WED,THU,FRI,SAT};int main() {Week w;w=FRI;cout<<"Day of week?\n"<<w+1;return 0;
}/*
Day of week?
6
*/
● 在C++中,枚举类型不支持下标访问。因为枚举类型被设计为常量集合,类似于简单的整型值。如果需要根据索引来获取枚举值,可以使用 switch 语句或者 if-else 逻辑来实现。
#include <iostream>
using namespace std;enum Week{SUN,MON,TUE,WED,THU,FRI,SAT};int main() {Week w;w=FRI;switch(w) {case 0: //case SUN:cout<<"Sunday\n";break;case 1: //case MON:cout<<"Monday\n";break;case 2: //case TUE:cout<<"Tuesday\n";break;case 3: //case WED:cout<<"Wednesday\n";break;case 4: //case THU:cout<<"Thursday\n";break;case 5: //case FRI:cout<<"Friday\n";break;case 6: //case SAT:cout<<"Saturday\n";break;default:cout<<"Don't know what day of the week\n";break;}return 0;
}/*
Friday
*/