我正在製作一個原始時間守護程序,我想暫停並簡單按下一個鍵即可恢復。我已經告訴C++中的基本暫停/恢復功能
system("pause>null")
暫停程序,直到一個鍵被擊中,但條件是怎麼寫的停下來開始?
最佳結構僞代碼:
if (certain_key_pressed)
{
pause_program_until_any_key_hit;
}
我正在製作一個原始時間守護程序,我想暫停並簡單按下一個鍵即可恢復。我已經告訴C++中的基本暫停/恢復功能
system("pause>null")
暫停程序,直到一個鍵被擊中,但條件是怎麼寫的停下來開始?
最佳結構僞代碼:
if (certain_key_pressed)
{
pause_program_until_any_key_hit;
}
有2個成語可以從這裏選擇。輪詢或事件驅動的編程。
輪詢是更簡單但通常不太優雅的解決方案,程序會定期檢查暫停按鈕是否在循環中被擊中。
While(not_quit)
{
if(key_pressed)
Etc...
在事件驅動編程中,您可以使用事件處理程序註冊pauseButtonPressed事件。當按下暫停按鈕時,分配處理事件任務的特殊功能將調用暫停功能。
事件驅動風格將完美地滿足我的需求。 – aadah 2012-03-13 01:36:53
if (certain_key_pressed)
while (true)
{
if (any_key_hit)
break;
}
像這樣的暫停時按下特定按鍵被放置在(想必你的程序循環)的任何環。然後它會保持它暫停,直到任何鍵被擊中。
pause> null將取決於操作系統。你有沒有看過標準的IO方法,看看存在哪些基本上可以讓你僞代碼的「原樣」? – John3136 2012-03-13 00:08:59
可能重複的[如何模擬「按任意鍵繼續?」](http://stackoverflow.com/questions/1449324/how-to-simulate-press-any-key-to-continue) – Johnsyweb 2012-03-13 00:25:35