cin.ignore (numeric_limits <streamsize> :: max (), '\ n'); max () não reconhece

Estou fazendo uma introdução ao C ++ e estou usando o VStudio 2013 no Win7. Eu tento evitar a entrada errada de dados dos meus menus, e está funcionando em todos eles, exceto 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();
    }

a única diferença é que na condição de mover> uma variável (tamanho) não um número. Quando eu entro em um char ele volta para a pergunta pedindo outra entrada, mas se eu digitar uma palavra, ela quebra!

Eu tento usarcin.ignore(numeric_limits<streamsize>::max(), '\n'); mas os destaques do compiladormax() e diz "esperando identificador".

Talvez seja fácil para todos vocês bons programadores, mas não sei como consertar isso. Alguém pode me ajudar?

questionAnswers(4)

yourAnswerToTheQuestion