В настоящее время я пишу программу на с ++, которая очень похожа на классическую программу «змея» с некоторыми изменениями. Я пишу это так, что он будет обновлять экран пять раз в секунду, основываясь на ctime, возможно, больше, если это можно будет обработать. Одна вещь, которую я хотел бы сделать, это сделать так, чтобы в файле .h была переменная «currkeypressed». Эта переменная будет удерживать клавишу, которую пользователь в данный момент удерживает, и змеиная голова пойдет в этом направлении. Каждый узел в змее будет отдельным объектом, поэтому нажатие курсора будет влиять только на голову. Направленные и локационные данные будут передаваться по змее от узла к узлу при каждом обновлении.
Мой вопрос: как я могу заставить программу хранить эти данные постоянно, а не обновлять только с cin
при нажатии клавиши или через определенный интервал? Я знаю, что могу принять значение ascii для клавиш со стрелками в некотором цикле for, но, похоже, это не сработает, если удерживать клавишу нажатой и если цикл очень длинный, он может пропустить нажатие. Кто-нибудь знает, как это сделать?
РЕДАКТИРОВАТЬ: я использую ОС Linux, точнее Ubuntu