簡體   English   中英

.LIB和.OBJ文件有什么區別? (Visual Studio C ++)

[英]What is the difference between .LIB and .OBJ files? (Visual Studio C++)

我知道.OBJ是編譯一個編譯單元的結果,而.LIB是一個靜態庫,可以從幾個.OBJ創建,但這種差異似乎只是在編譯單元的數量。 還有其他區別嗎? 是相同還是不同的文件格式?

當想知道在鏈接到最終可執行文件期間是否合並了兩個(或更多).LIB中定義的相同靜態變量時,我遇到了這個問題。 對於.OBJ,變量是合並的。 但是在.LIBs中它是一樣的嗎?

.LIB文件是與索引連接在一起的.OBJ文件的集合。 鏈接器如何處理也應該沒有區別。

似乎.lib文件就像.obj文件的集合。 有些人還會考慮將多個.obj文件切換為.lib文件的過程,如Archive。 在這種情況下,.lib文件是一個.obj文件框,鏈接器可以同等對待它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM