簡體   English   中英

在Visual Studio項目中使用在vs80(Visual Studio 2005)下編譯的C ++靜態庫在c ++ vs140(Visual Studio 2015)下編譯

[英]Using static libraries compiled C++ under vs80 (Visual Studio 2005) in a Visual Studio project compiling under c++ vs140 (Visual Studio 2015)

是否可以在Visual Studio 2015 c ++項目(vs140)中使用通過vs80(Visual Studio 2005)編譯的C ++靜態庫(.lib)?

就類似的問題而言,我發現“我可以在Visual Studio 2008中使用Visual Studio 6編譯的C ++靜態庫嗎?” ,在這種情況下,答案似乎是“需要警告”,但是我對靜態庫沒有經驗,並且想知道對於在vs80至vs140下編譯的c ++靜態庫是否同樣適用。

編輯:我想補充一點,我正在嘗試移植的庫非常小而簡單,並且不會以任何方式訪問全局變量或依賴於'extern C'

通常,您需要使用完全相同的編譯器來構建所有代碼(包括所使用的庫)。 無法保證由不同的編譯器(甚至沒有不同的次要版本)生成的代碼可以鏈接在一起並產生可用的結果-有時似乎可以正常工作,但只會變得令人討厭並且在以后的運行時難以診斷問題,因此請不要做到這一點。

暫無
暫無

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

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