C++ 什麼是庫?dll庫和lib庫有什麼區別?如何封裝成lib庫?

1.什麼是庫?

就是別人寫好了很多程序,然後把那些.cpp文件留下來了,讓大家用他們寫好的東西。
比如別人寫了個hello word,如果你要用hello word,就不用自己寫了,直接把別人的include進來就能用了。
其他的都是一個道理,就是別人寫的比較好比較高效罷了。

2.dll庫和lib庫有什麼區別?

第一:.DLL是動態鏈接庫,而.LIB是靜態鏈接庫
     dll是個編譯好的程序,調用時可以直接調用其中的函數,不參加工程的編譯. 而lib應該說是一個程序集, 只是把一些相應的函數總結在一起, 如果調用lib中的函數,在工程編譯時,這些調用的函數都將參加編譯.
第二:從內存管理的角度來看,lib必須被鏈接到主程序中,主程序進入內存,lib也同時進入內存。而dll則是需要用到它的時候由操作系統調入內存。從複用性的角度來看,lib因爲必須參加編譯,所以複用性就不如DLL啦


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章