方法一:
用函数(简单的应用场景下)
方法二:
用字符串转换
//创建枚举类型
enum athleteName {
WANG, ZHOU, SU, CHO,
KIM, LI, MIRE, BOUTIN
};
//创建结构体
struct athlete {
int num;
athleteName name;
string sName; //用于将枚举类型进行字符化转化
string country;
int age;
float grade;
};
//创建结构体数组
athlete arr[8] = {
{1, WANG, "","CHN", 20,0},
{25, ZHOU,"", "CHN", 18,0},
{36, SU, "","NED", 19,0},
{77, CHO, "","KOR", 23,0},
{58, KIM, "","KOR", 26,0},
{69, LI, "","CHN", 17,0},
{111, MIRE,"", "JPN", 19,0},
{99, BOUTIN,"", "CAN", 19,0}
};
//枚举类型字符化
for (int i = 0; i < 8; i++)
{
switch (arr[i].name) {
case 0:
arr[i].sName = "WANG";
break;
case 1:
arr[i].sName = " ZHOU ";
break;
case 2:
arr[i].sName = " SU ";
break;
case 3:
arr[i].sName = " CHO ";
break;
case 4:
arr[i].sName = " KIM ";
break;
case 5:
arr[i].sName = " LI ";
break;
case 6:
arr[i].sName = " MIRE ";
break;
case 7:
arr[i].sName = " BOUTIN ";
break;
}
}
此方法用于不得不使用枚举类型和数组结合时的不时之需
正常情况下直接用字符串好很多
唔......真的还没体会到枚举类型存在的意义