Я пытаюсь найти элемент перечисления в векторе, по-видимому, как некоторая ошибка оператора. Любые указания, пожалуйста?найти в векторе enum
Вот перечисление
enum RESPONSE{
GAME_START='P',
GAME_HELP='H',
GAME_QUIT='Q'
}
Здесь использование
std::string s = getinputChar(); //this returns a string with a one character.
std::vector<RESPONSE> responces;
responces.push_back(GAME_START);
responces.push_back(GAME_QUIT);
std::vector<RESPONSE>::iterator it = find (responces.begin(), responces.end(), s.c_str());
Ошибка:
error C2678: binary '==' : no operator found which takes a left-hand operand of type 'RESPONSE' (or there is no acceptable conversion)
@AdrianoRepetti Каждое перечисление является 'RESPONSE'. Это будет способствовать использованию 'int', если оно используется в контексте, где' RESPONSE' неприемлем. –
@JamesKanze довольно прав! –