•C++的枚举不再是普通的整数类型,而是一种独立的类型,这个体现了C++强类型的特征
// 枚举
#include <iostream>
using namespace std;
//
//英雄的状态
enum HeroState {
Stand,
Move,
Attack,
Die
};
//匿名枚举
enum {
INDEX,
INDEX2,
INDEX3
};
//相当于
/*
const int INDEX = 0;
const int INDEX2 = 1;
const int INDEX3 = 2;
*/
void logic (HeroState state){
switch (state) {
case Stand:
cout << "英雄站立" << endl;
break;
case Move:
cout << "英雄移动" << endl;
break;
case Attack:
cout << "英雄攻击" << endl;
break;
case Die:
cout << "英雄s了" << endl;
break;
default:
break;
}
}
int main(){
//
HeroState state;
state = Stand;
logic(state);
state = Move;
logic(state);
int x = Attack;
cout << "这是赋值给int类型的变量:" << x << endl;
//直接给int值不可以 ,因为C++类型检查严格
// state = 0;
state = (HeroState)1;
logic(state);
return 0;
}