静态链接库与动态链接库的优缺点
生活随笔
收集整理的這篇文章主要介紹了
静态链接库与动态链接库的优缺点
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 靜態鏈接庫的優點?
?(1) 代碼裝載速度快,執行速度略比動態鏈接庫快;?
?(2) 只需保證在開發者的計算機中有正確的.LIB文件,在以二進制形式發布程序時不需考慮在用戶的計算機上.LIB文件是否存在及版本問題,可避免DLL地獄等問題。?
2 動態鏈接庫的優點?
?(1) 更加節省內存并減少頁面交換;
?(2) DLL文件與EXE文件獨立,只要輸出接口不變(即名稱、參數、返回值類型和調用約定不變),更換DLL文件不會對EXE文件造成任何影響,因而極大地提高了可維護性和可擴展性;
?(3) 不同編程語言編寫的程序只要按照函數調用約定就可以調用同一個DLL函數;
?(4)適用于大規模的軟件開發,使開發過程獨立、耦合度小,便于不同開發者和開發組織之間進行開發和測試。
3 不足之處
?(1) 使用靜態鏈接生成的可執行文件體積較大,包含相同的公共代碼,造成浪費;
?(2) 使用動態鏈接庫的應用程序不是自完備的,它依賴的DLL模塊也要存在,如果使用載入時動態鏈接,程序啟動時發現DLL不存在,系統將終止程序并給出錯誤信息。而使用運行時動態鏈接,系統不會終止,但由于DLL中的導出函數不可用,程序會加載失敗;速度比靜態鏈接慢。當某個模塊更新后,如果新模塊與舊的模塊不兼容,那么那些需要該模塊才能運行的軟件,統統撕掉。這在早期Windows中很常見。
總結
以上是生活随笔為你收集整理的静态链接库与动态链接库的优缺点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 指针数组、数组指针、数组的区别与联系
- 下一篇: 野指针和悬空指针的形成原因和如何避免!