Я хотел бы предложить пользователю сообщить мне, в каком жанре находится книга. Я подумал, что, возможно, смогу дать пользователю меню, в котором они вводят цифры для любого выбора. Я хотел бы знать, если бы вы могли просто ввести имя пользователя в виде строки для жанра?
class Book
{
public:
enum Genre
{
fiction,
nonfiction,
periodical,
biograhpy,
children
};
//...
void get_genre();
//...private:
//...
Genre genre;
};
//========================================================================================
//========================================================================================
void Book::get_genre()
{return;
}
Вам придется сопоставить имена значений перечисления с их значениями самостоятельно. Вы можете использовать std::map<string, Genre>
или же std::unordered_map<string, Genre>
(если c++11
доступен). Нет способа преобразовать имя значения в его значение в C++
,
Других решений пока нет …