В настоящее время я создаю консольную игру для школы, и у меня возникают проблемы с использованием GetAsyncKeyState для моего главного меню. Мое главное меню работает в бесконечном цикле, который прерывается только один раз при нажатии клавиши. Например, у меня есть:
if(GetAsyncKeyState('1'))
{
Play();
break;
}
Это само по себе работает нормально. Проблема заключается в том, что в моем методе Play () у меня есть выражение cin сразу же, и в моем Play () появляется «1» из Menu (). Я попытался cin.clear () безрезультатно, и cin.ignore (...) предотвращает мгновенное изменение с Menu () на Play (). Есть ли способ предотвратить это?