靜態鏈接:主函數中調用了庫中的某個函數(one()
),並且把該函數編碼進了可執行文件
中。
存在的問題①:若需要調用庫中的函數過多,會造成可執行文件
體積巨大.
存在的問題②:因爲庫中的函數代碼嵌入了可執行程序
,所以如果庫更新了,想要更新可執行文件
中庫部分的代碼,就只能重新編譯。
爲了解決以上2個問題,可以讓庫中的函數不要直接編譯進可執行程序
,而是放在內存中,可執行程序
在使用(one
)函數時,直接讀內存的地址就可以用了。這樣既減小了可執行程序
的大小,又可以方便的使用庫函數更新。這種方式即爲——動態鏈接
不同平臺下靜態庫和動態庫的名稱
視頻鏈接:
https://www.youtube.com/watch?v=eW5he5uFBNM
靜態庫和動態庫(靜態鏈接和動態鏈接)的區別【圖文,簡潔易懂】
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
基本的遞歸函數
Sirius_Chen
2020-07-05 18:04:30
【leveldb源碼閱讀】之LOG
夏殇0808
2020-07-07 08:10:11
leveldb源碼閱讀—status
夏殇0808
2020-07-07 08:10:10
Leetcode 405. Convert a Number to Hexadecimal (Easy) (cpp)
Niko_Ke
2020-07-06 15:28:23
Leetcode 133. Clone Graph (Medium) (cpp)
Niko_Ke
2020-07-06 15:28:22
Leetcode 256. Paint House (Medium) (cpp)
Niko_Ke
2020-07-06 15:28:21
Leetcode 438. Find All Anagrams in a String (Easy) (cpp)
Niko_Ke
2020-07-06 15:28:21
199. Binary Tree Right Side View (Medium)
Niko_Ke
2020-07-06 15:28:21
淺談C++中的重載、重寫(覆蓋)、隱藏
jojozym
2020-07-06 08:35:55
【C++】C/C++中動態內存管理方式;new / delete 與 operator new / operator delete;
Miss_Monster
2020-07-05 00:17:39
C語言calloc()函數
jiarenyf
2020-07-02 01:58:14
二維碼的實現原理和實現過程[確定二維碼版本信息]
bosaidongmomo
2020-07-01 04:51:11