cin.ignore (numeric_limits <streamsize> :: max (), '\ n'); max () no lo reconoce

Estoy tomando una introducción a C ++ y estoy usando VStudio 2013 en Win7. Intento evitar la entrada incorrecta de datos de mis menús, y está funcionando en todos ellos, excepto en este.

    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();
    }

la única diferencia es que en la condición para mover> una variable (tamaño) no un número. Cuando ingreso una charla, vuelve a la pregunta pidiendo otra entrada, pero si ingreso una palabra, ¡se rompe!

Trato de usarcin.ignore(numeric_limits<streamsize>::max(), '\n'); pero el compilador destacamax() y dice "esperando el identificador".

Tal vez sea fácil para todos ustedes buenos programadores, pero no sé cómo solucionarlo. Alguien puede ayudarme?

Respuestas a la pregunta(4)

Su respuesta a la pregunta