爲了保持main()(在C++中)儘可能乾淨/小巧,有幾個選項可以選擇,但哪些最好?初始化main中的所有變量,在main之外初始化它們作爲全局,全局in .h,在主要中初始化它們但在別處設置值(通過將它們傳遞給函數)。可能還有其他方法,但保持main()儘可能清潔/清晰/儘可能小的最佳方法是什麼?如何清理雜亂的main()?
0
A
回答
2
有一些常見的模式,像封裝數據和操作在類的有意義的。例如,如果從文件處理命令行參數或配置,則可以創建一個Config
類,該類可以從argc
和argv
和/或可能的文件初始化,然後將其用作用戶可控參數的存儲。
另一種常見的圖案被所有的main
移動到一個類,包含狀態成員屬性,並且具有run
(或main
稱其爲你願意)成員函數。這允許一個簡單的main
重構,你不必通過所有的狀態作爲函數參數。有時這兩個選項是混合的,並且類從main
的參數初始化。
沒有明確的答案,因爲它取決於你main
是目前做的,在某些情況下,它仍然是有意義保持長上下的主如果不同部分有清晰的分隔,這是不是太長,其中長上下的和長是主觀的措施......
9
避免像豬流感這樣的全局/單例,這是一種不好的做法,可能對較大的多線程項目產生非常不好的影響。看到你正在使用C++,你可以用你的應用程序到具有一切很好地分解成套房,爲您/您的編碼風格,然後在主所有你需要做一種風格的一大管理器類型類:
int main(int argc, char** argv)
{
Application MyApp(argc,argv);
return MyApp.start();
}
這是相當整潔的
相關問題
- 1. 清理MS Word中的字典中的雜亂段落
- 2. 如何清理樣式表混亂?
- 3. 如何清理複雜的QList?
- 4. 雜亂搞亂動畫
- 5. 清理凌亂的VBA公式
- 6. TFS:我如何清理亂七八糟的服務器?
- 7. 的Python:如何清理了凌亂彈出列表
- 8. 沒有高清的main()= O,用高清的main()= X
- 9. htaccess從雜亂的URL重定向到清潔
- 10. 如何使用content_tags清理這個混亂?
- 11. PHP注入攻擊 - 如何最好地清理混亂?
- 12. 針對WordPress的雜亂HTTPS
- 13. Safari中的雜亂滾動
- 14. 清理嘈雜的倒頻譜結果
- 15. 清理複雜的WebForms項目
- 16. C++中更復雜的清理
- 17. 如何在熊貓中進行復雜的數據清理
- 18. 如何使用git rebase清理錯綜複雜的歷史
- 19. 算法複雜混亂
- 20. GHC雜亂而編譯
- 21. 時間複雜度混亂
- 22. 如何「清理」Microsoft.Office.Interop.Excel.Workbook
- 23. 如何做清理?
- 24. 如何清理FoundationDB?
- 25. 如何清理threadlocals
- 26. 清理凌亂的代碼,基於多個選項的查詢
- 27. 如何在java中處理main()?
- 28. 我該如何將一名演員帶到雜亂的地方
- 29. 如何將CSS應用於雜亂的舞臺?
- 30. 如何從雜亂的數據中創建php關聯數組
有沒有「最好」的方式。對於任何事情,永遠。事實上,在這種情況下,我甚至不認爲這個目標實際上是有價值的。 –
這太模糊了,以目前的形式回答,並且很可能會產生一堆意見。做你認爲有意義的人,在你之後維護代碼... – Nim
你們都有一個有效的觀點。 – Rhexis