第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C ++中是否有不錯的等待功能?

C ++中是否有不錯的等待功能?

C++
紅糖糍粑 2019-11-14 09:14:51
我在C ++中學(xué)到的第一件事是#include <iostream>int main(){    std::cout<<"Hello, World!\n";    return 0;}會非常迅速地出現(xiàn)并消失而不會停頓。為了防止這種情況,我不得不去記事本,并保存helloworld.exepause酶helloworld.bat當(dāng)我需要創(chuàng)建一堆小型測試程序時,這變得很乏味,最終我只是將while(true);大多數(shù)測試程序都放在最后,以便可以看到結(jié)果。我可以使用更好的等待功能嗎?
查看完整描述

3 回答

?
慕森王

TA貢獻1777條經(jīng)驗 獲得超3個贊

許多人建議使用POSIX sleep,Windows Sleep,Windows system("pause"),C ++ cin.get()…… getch()大約在1920年代后期,甚至還有一個DOS 。


請不要做任何這些。


這些解決方案都無法通過我的團隊的代碼審查。這意味著,如果您提交此代碼以將其包含在我們的產(chǎn)品中,則會阻止您的提交,并且將被告知您去尋找其他解決方案。(有人可能會爭辯說,當(dāng)您只是一個業(yè)余愛好者時,事情并沒有那么嚴(yán)重,但是我建議您在寵物項目中養(yǎng)成良好的習(xí)慣將使您成為商業(yè)組織中的重要專家,并保持您的錄用。 )


使控制臺窗口保持打開狀態(tài),以便您可以讀取程序的輸出,這不是程序的責(zé)任!當(dāng)在程序末尾添加一個wait / sleep / block時,就違反了單一責(zé)任原則,造成了巨大的抽象泄漏,并破壞了程序的可重用性/可鏈接性。它不再需要輸入并提供輸出-出于臨時使用的原因而阻塞。這是非常不好的。


相反,您應(yīng)該配置環(huán)境以在程序完成工作后保持提示打開。您的批處理腳本包裝器是一個好方法!我可以看到必須手動進行更新會很煩人,并且您無法從IDE調(diào)用它。您可以使腳本將程序的路徑作為參數(shù)執(zhí)行,并配置您的IDE以直接調(diào)用它而不是直接調(diào)用程序。


一種臨時的快速啟動方法是將IDE的run命令從cmd.exe <myprogram>或更改<myprogram>為cmd.exe /K <myprogram>。該/K開關(guān)cmd.exe 品牌在給定的路徑程序后提示保持打開狀態(tài)已經(jīng)終止。這將比您的Batch腳本解決方案稍微麻煩一些,因為現(xiàn)在您必須exit在完成讀取程序輸出后鍵入或單擊紅色的“ X”,而不是僅僅花一些空格鍵。


我假定使用的是IDE,因為否則您已經(jīng)從命令提示符中調(diào)用了,那么這首先不會成為問題。此外,我假設(shè)使用Windows(根據(jù)問題中提供的詳細信息),但是此答案適用于任何平臺……順便說一句,只有一半。


查看完整回答
反對 回復(fù) 2019-11-14
  • 3 回答
  • 0 關(guān)注
  • 374 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號