Я пытаюсь создать игру с консольным приложением c ++
Моя цель - запустить мой do .. while()
во время ожидания ответа.Он должен отображать «..O ..» до тех пор, пока не будет нажата клавиша «a», а затем вместо «.O ...» или когда нажата клавиша «d», покажет «... O».Моя проблема в том, что я не могу использовать cin
или getline
, не останавливая приложение для ожидания ввода.
Так есть ли способ сделать что-то вроде цикла, где значение * 1008 не возвращает значение* через 10 миллисекунд он печатает "..O .."?Я не хочу, чтобы программа продолжала ждать ввода, возможно, как Sleep(10)
между каждым cin
...
Моя идея о том, как это должно выглядеть:
void out()
{
int x;
string key;
do {
cin >> key;
//insert here something like break; that will
//stop waiting for input after 10 milliseconds.
system("cls");
if (key != "a" && key != "d") {
cout << "..O..";
}
else {
if (key == "a") {
cout << ".O..." << endl;
}
else {
if (key == "d") {
cout << "...O." << endl;
}
else {
cout << "..O..";
}
}
}
} while (x == 0);
x = 0;
}