Cin.Ignore () no funciona

Aquí tengo un código:

cout << "Press Enter To Exit...";
cin.ignore();

este programa se ejecutará y esperará hasta que presione enter y luego saldrá. ahora vea este código:

int m;
cin >> m;
cout << "Press Enter To Exit...";
cin.ignore();

esta vez después de ingresar un número para guardar en "m", el programa saldrá sin esperar el comando cin.ignore que espera presionar enter.

Quiero decir que si usa el comando cin antes de cin.ignore, el comando cin.ignore se saltará. ¿por qué? ¿Y qué debo hacer para arreglarlo?

Respuestas a la pregunta(8)

Su respuesta a la pregunta