加速 C編譯時間的技術
語言技術
-
粉刺成語:這個習慣減少了標頭之間的依賴用法關係,最大限度地減少了重新編譯。
-
前向聲明:使用前向聲明來聲明標識符,而不包含完整的定義。
-
保護條件: 防止在一次翻譯中多次包含標題
-
減少相互依賴:模組化和低相互依賴減少了重新編譯的範圍。
編譯器選項
-
預編譯標頭:一次編譯多個翻譯單元的通用標頭。
-
並行性:利用多個 CPU 或核心同時編譯。考慮 GNU Make 中的 -j [N] 等選項或 Visual Studio 中的平行建置選項。
-
降低最佳化等級:放寬最佳化設定可減少編譯器工作負載。
-
共享庫:將不經常修改的程式碼隔離到庫中可以減少編譯和連結
系統增強
-
更快的硬體:考慮增加RAM、升級硬碟(包括SSD),或增加更多 CPU/核心。
其他提示
- 在頭檔中使用I/O 宣告標頭() 而非完整的I/O 標頭()。
- 選擇在函數簽章中傳遞參考以最大程度地減少類型定義包含。
以上是如何顯著加快 C 編譯時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!