Cin.Ignore () não está funcionando

Aqui tenho um código:

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

Este programa será executado e esperará até você pressionar Enter e, em seguida, sairá. Agora veja este código:

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

desta vez, após digitar um número para salvar em "m", o programa será encerrado sem aguardar o comando cin.ignore, que aguarda pressionando enter.

Quero dizer, se você usar o comando cin antes do cin.ignore, o comando cin.ignore será ignorado. porque? e o que devo fazer para corrigi-lo?

questionAnswers(8)

yourAnswerToTheQuestion