我有这个枚举:
enum Status { CONTINUE, WON, LOST };
我想给一个值的索引(例如 1 代表 WON)并获得值(WON)。 我搜索了,但我只是找到了相反的方法!!! 我找到了这段代码,但它又给了我索引:
int main()
{
enum Status { CONTINUE, WON, LOST };
int myInteger = 1;
Status myValue = (Status)myInteger;
cout << myValue <<endl;//it rerurns 1 !!!
system("PAUSE");
}
那么从枚举中获取值的语法是什么?//我需要像array[1]这样的东西
最佳答案
C++“继承”自 C 的 enum
。它实际上只不过是 C 中传统做事方式的简写符号,您的 enum
应该有是这样的:
#define CONTINUE 0
#define WON 1
#define LOST 2
enum
自动为符号分配连续的数字,但仅此而已。
C++11 添加了 enum class
来创建一个更像普通类型的枚举,但它仍然没有提供一种(自动)方式将数字表示形式转换为符号用过。
关于c++ - 如何给一个枚举值的索引并得到它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22205888/