通常用 C 來寫 dll, 這樣其它語言也可以呼叫 , 因為其它語言基本都提供呼叫 C 語言 dll的方法
C語言的dll, 和 C++的dll有什么區別?
對于C++寫的dll, 如果函式內部使用 C++的STL資料結構, 如 vector, 但是輸入輸出采用 C 基本資料型別,
那么是不是也可以被別的語言呼叫 ? 這樣就與 C 語言的 dll 沒什么差別?
uj5u.com熱心網友回復:
或者說, 雖然我的檔案名是*.c, 但我用著vs2019 , 專案型別是dll, 編譯出來的本來就是C++版本的 dll? 沒什么嚴格差異?uj5u.com熱心網友回復:
不太清楚微軟是怎么搞的,應該跟gcc g++類似吧,gcc能編譯的g++也能編譯,因為C++支持全部C的語法(當然只是承諾,有例外別抬杠),但由于C++中有多載,所以為了適配引入了extern "C"機制。。。總之兩個型別的dll應該沒啥本質區別,就是命名方式不同uj5u.com熱心網友回復:
dll是二進制復用,所以他的標準不是按源程式分的,而有它自己的標準和什么語言撰寫的關系不大。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/268743.html
標籤:C++ 語言
上一篇:C語言指標問題
