Сначала начните с определения вашего контейнера с домашними животными (меня беспокоит нехватка собак и кошек):
std::vector<std::string> pets = { "Snake", "Bird", "Fish", "Turtle" };
Теперь мы знаем возможных домашних животных, мы можем вывести их:
int main() {
std::vector<std::string> pets = { "Snake", "Bird", "Fish", "Turtle" };
std::cout << "Pick your pet:";
for (size_t i = 0; i < pets.size(); ++i) {
std::cout << " " << pets[i];
}
}
Это дает нам
Выберите своего питомца: Snake Bird Fish Turtle
Что близко.char
- это просто целое число, которое мы можем использовать при печати домашних животных:
for (size_t i = 0; i < pets.size(); ++i) {
std::cout << " (" << char('a' + i) << ") " << pets[i];
}
Мы говорим print 'a' + i
, потому что это даст нам a
для первого элемента, b
длявторой и т. д.
Теперь вы можете использовать ту же логику при обращении к вашему контейнеру (здесь я опускал обработку erorr, но вы должны убедиться, что userChoice
является подходящим значением):
char userChoice;
std::cin >> userChoice;
std::cout << "You chose " << pets[userChoice-'a'];
Теперь, если пользователь вводит d
, мы минус a
от него, что дает нам 3, который является последним элементом в контейнере, и будет печатать
Вы выбрали Черепаху