DLL导出和使用

这段时间有人交流关于DLL的使用,其中有些点是我当时没有能反映过了。回来后才想明白的,现在记录在案,以供翻阅。

DLL的显式调用和隐式调用

关于这点在交流是我是蒙圈的,这注意是我没有日常的知识整理没有做好。其实很简单:DLL和Lib文件的加载方式

VS的使用

  • 显式调用:使用LoadLibrary载入后缀为dll的文件(动态链接库),使用GetProcAddress获取函数地址。
  • 隐式调用:使用#pragma comment(lib, “XX.lib”)并引用头文件即可。(静态链接库)PS:vs中还有别的方式。

QtCreator的使用

  • 显式调用:使用QLibrary对象的load方法载入后缀为dll的文件(动态链接库),使用resolve获取函数地址。
  • 隐式调用:在pro中用 LIBS += XX.lib 添加,在用的地方引用头文件。(静态链接库)

DLLh和Lib使用的区别是:Dll是动态加载使用,Lib是编译到程序里面的。

DLL导出

导出变量

挖坑等填

导出函数

挖坑等填

导出类

挖坑等填

导出虚函数

挖坑等填

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。