Множества как индекс в массиве C++

Рейтинг: 3Ответов: 1Опубликовано: 30.11.2014

Имеется следующий код:

enum colors { red,green,blue };//дано множество 
int myArray[colors::blue];//и массив
string strColor="Red";//Далее пользователь вводит строку, например

Точно помню, что в паскале можно было провернуть что-то вроде этого:

myArray[strColor]=...;

Ответы

▲ 5

В C++ так нельзя. Соответственно, нужно городить либо хардкод на условиях, либо пользоваться промежуточным словарем map<string,int>.