簡述靜態(tài)庫和動態(tài)庫的區(qū)別 動態(tài)庫中如何調(diào)用靜態(tài)庫函數(shù)?
動態(tài)庫中如何調(diào)用靜態(tài)庫函數(shù)?我們可以得出第一個結(jié)論:兩者都是靜態(tài)鏈接庫。當(dāng)有同名函數(shù)時,鏈接會有多次定義符號的錯誤!讓我們看看這兩個動態(tài)庫的動態(tài)鏈接庫。同一個LIBA libb生成動態(tài)鏈接庫,不修改主
動態(tài)庫中如何調(diào)用靜態(tài)庫函數(shù)?
我們可以得出第一個結(jié)論:兩者都是靜態(tài)鏈接庫。當(dāng)有同名函數(shù)時,鏈接會有多次定義符號的錯誤!讓我們看看這兩個動態(tài)庫的動態(tài)鏈接庫。同一個LIBA libb生成動態(tài)鏈接庫,不修改主測試程序!或者:如果刪除動態(tài)庫,這種編譯方法稱為動態(tài)庫的隱式調(diào)用利巴索,運(yùn)行a.out時,將出現(xiàn)找不到動態(tài)庫的錯誤。這種情況也可以稱為加載時間鏈接!靜態(tài)庫屬于編譯時鏈接!第二個結(jié)論是:如果它們都是動態(tài)庫并且被隱式調(diào)用,則輸出結(jié)果與動態(tài)庫的順序有關(guān)。繼續(xù)看動態(tài)加載動態(tài)庫。修改主測試程序還可以得出結(jié)論,如果動態(tài)鏈接庫沒有添加庫連接的選項(xiàng),函數(shù)調(diào)用是添加庫的正確路徑,這將主要根據(jù)庫的路徑順序!左側(cè)將覆蓋右側(cè)。當(dāng)其中只有一個鏈接時,它也會生效。例如,圖片一直違規(guī),請詢問,謝謝