Привет, я пытаюсь проверить ввод пользователя, ища ввод 1 или 0. Кажется, что часть проверки строки работает нормально, но любой ввод на основе целых чисел имеет консольное окно, принимающее ввод, но не перепрыгивающее через оператор if, возвращая ввод (maxItems).Вот код:
int RollingStats::GetOption()
{
int maxItems;
std::cout << "Please enter either to store data individually (0) or as a range(1)" << std::endl;
std::cin >> maxItems;
if ((!(std::cin >> maxItems) && maxItems != 0) | (!(std::cin >> maxItems) && maxItems != 1))
{
std::cin.clear();
std::cin.ignore(100, '\n');
std::cout << "Please enter an input of either 0 or 1" << std::endl;
GetOption();
}
return maxItems;
}
Любая помощь будет оценена.