Trong thư viện tĩnh, tệp lib chứa mã đối tượng thực tế cho các chức năng do thư viện cung cấp. Trong phiên bản được chia sẻ (những gì bạn gọi là thư viện động được liên kết tĩnh), chỉ có đủ mã để thiết lập liên kết động khi chạy.
Tôi không chắc chắn về "thư viện động được liên kết động" (được tải theo chương trình). Bạn thậm chí có liên kết với một .lib trong trường hợp đó?
Edit:
Một chút muộn tới, nhưng không có, bạn không liên kết một lib. Vâng, bạn liên kết với lib với libraryloaderex trong đó. Nhưng đối với các thư viện thực tế mà bạn đang sử dụng, bạn cung cấp cam kết ràng buộc của mình thông qua con trỏ hàm C và LoadLibrary lấp đầy những người trong
Dưới đây là một bản tóm tắt:.
Linking ǁ Static | DLL | LoadLibrary
=========ǁ===============|======================|===================
API code ǁ In your com- | In the DLL | In the DLL
lives ǁ piled program | |
---------ǁ---------------|----------------------|-------------------
Function ǁ Direct, may | Indirect via table | Indirect via your
calls ǁ be elided | filled automatically | own function ptrs
---------ǁ---------------|----------------------|-------------------
Burden ǁ Compiler | Compiler/OS | You/OS
Có thể lưu ý rằng câu hỏi là về nền tảng MS Windows. – cubuspl42