В моей программе командной строки Windows я жду, когда пользователь одновременно нажмет левый Shift и левый щелчок, чтобы продолжить выполнение остальной части программы. Командная строка не будет в фокусе при нажатии комбинации клавиш.
Мой текущий код:
#include <iostream>
#include <windows.h>
int main()
{
std::cout << "Press left shift and left click to start\n";
// GetKeyState() returns 0 or 1 when key is not pressed, and -127 or -128 when key is pressed
while (GetKeyState(VK_LSHIFT) >= 0 || GetKeyState(VK_LBUTTON) >= 0) {
;
}
std::cout << "Starting\n";
}
Текущий код работает. Однако, когда пользователь ожидает ввода комбинации клавиш, загрузка центрального процессора одного ядра составляет 100%. 1008 *