画面に現在の時刻を表示するプログラムを作成しました。私が今やりたいことは、1分ごとにその時間を更新することです。メインプログラムの実行中にC++で1分が経過したかどうかをバックグラウンドで確認する方法は?
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();
として表示される時間が遅延またはメインを中断することなく、毎分後に更新する必要がありますということですプログラム。
つまり、プロンプトが表示されてから数分間何も入力しないと、1分後に自動的に更新され、プロセス全体を通してユーザーの入力を常に待っていますプログラムは通常どおり実行されます)。そうする方法はありますか?私は、これを行うためのクロスプラットフォーム技術がないかもしれないことを知っています。だから私はちょうどwindows os
のためにこれをしたいです。
EDIT:現在のカーソル位置またはユーザーが書いたテキスト(まだ入力されていない)を復元する必要はありません。
cinベースの入力を使用してこれを行うことはできません。 – SergeyA
getche()関数(ライブラリ関数)を介して入力を受け取り、それは可能ですか? –
Nope。キーが押されるまでプログラムはブロックされます。 – SergeyA