【发布时间】:2011-03-02 10:34:48
【问题描述】:
我想为switch 语句使用enum 值。是否可以使用 "{}" 中包含的 enum 值作为 switch()" 的选择?
我知道switch() 需要一个integer 值,以便将编程流程引导到适当的case 号码。如果是这种情况,我是否只为enum 语句中的每个常量创建一个变量?
我还希望用户能够选择选项并将该选项传递给switch() 语句。
例如:
cout << "1 - Easy, ";
cout << "2 - Medium, ";
cout << "3 - Hard: ";
enum myChoice { EASY = 1, MEDIUM = 2, HARD = 3 };
cin >> ????
switch(????)
{
case 1/EASY: // (can I just type case EASY?)
cout << "You picked easy!";
break;
case 2/MEDIUM:
cout << "You picked medium!";
break;
case 3/HARD: // ..... (the same thing as case 2 except on hard.)
default:
return 0;
}
【问题讨论】:
-
所有这些情况 == 1。
-
@Noah:我相信他用斜线表示“一个或另一个”,而不是除法。虽然在数学上你是正确的,但我不认为这是他打算使用的实际代码。
标签: c++ enums switch-statement