1
我已经创建了一个在屏幕上显示当前时间的程序。我现在想要做的是每分钟更新一次。如何在后台检查在C++中执行主程序时是否经过了一分钟?
dateAndTime now; //created an object of a custom class dateAndTime
cout << "\n\t\t\t\t\t\t" << now.hour() << ':' << now.minute() << endl;
cout << "CASH MANAGER" << "\n";
cout << "1. Add cash" << "\n";
cout << "2. Withdraw cash" << "\n\n";
int ch;
cout << "Enter a number 1 or 2: ";
cin >> ch;
假设的时间通过以下流程更新:
if (time(0) == now.epochTime() + 1)
now.setTime(time(0));
现在,我想要做的是显示为now.hour() << ':' << now.minute();
时间应每隔一分钟就会更新而不会延迟或中断主程序。
这意味着如果用户例如在提示后几分钟内没有提供任何输入,则应在每分钟后自动更新时间,并且在整个过程中程序始终等待用户的输入(即主程序正常运行)。有没有这样做的方法?我知道这样做可能没有跨平台技术。所以我只想为windows os
这样做。
编辑:恢复当前光标位置或用户(尚未输入)的任何书面文本更新后不需要。
你无法使用基于cin的输入做到这一点。 – SergeyA
假设我通过getche()函数(库函数)进行输入,那么它有可能吗? –
没有。仍然会阻止你的程序,直到按下键。 – SergeyA