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() и он говорит «ожидающий идентификатор».

Это может быть легко для всех вас, хороших программистов, но я не знаю, как это исправить. Кто-нибудь может мне помочь?

Ответы на вопрос(4)

Ваш ответ на вопрос