cin.ignore (numeric_limits <streamsize> :: max (), '\ n'); max () не распознает
Я беру введение в C ++, и я использую VStudio 2013 на Win7. Я стараюсь избежать неправильного ввода данных из моих меню, и оно работает во всех из них, кроме этого.
cout << "Please choose your second number" << endl;
cin >> move2;
if (move2 < 1 || move2 > size)
{
cout << "That's not a valid move" << endl;
Sleep(2000);
cin.sync();
cin.clear();
}
единственное отличие состоит в том, что в условии перемещения> переменная (размер), а не число. Когда я ввожу символ, он возвращается к вопросу, запрашивающему другой ввод, но если я ввожу слово, оно ломается!
Я пытаюсь использоватьcin.ignore(numeric_limits<streamsize>::max(), '\n');
но компилятор подчеркиваетmax()
и он говорит «ожидающий идентификатор».
Это может быть легко для всех вас, хороших программистов, но я не знаю, как это исправить. Кто-нибудь может мне помочь?