首页 >后端开发 >C++ >## 如何从 DLL 导出整个 C 类?

## 如何从 DLL 导出整个 C 类?

Susan Sarandon
Susan Sarandon原创
2024-10-26 08:47:29418浏览

## How do you Export an Entire C   Class from a DLL?

从 DLL 导出整个 C 类

使用动态库加载进行后期绑定

虽然从 DLL 导出 C 级函数很简单,但处理导出的类需要不同的方法。通过动态库加载实现的后期绑定对于函数来说效果很好,但对类提出了挑战。

类的动态加载

不幸的是,通常不支持动态加载类。链接到 DLL 中定义的类并动态加载它需要特殊技术:

  • 工厂函数: 可以实现工厂函数来使用程序集创建对象以建立对象偏移量。
  • 延迟加载 DLL:延迟加载 DLL 可用于将加载延迟到运行时。

与标头和库的编译时链接

对于编译时链接,涉及使用 __declspec(dllexport) 导出类并包含标头并链接到 lib 文件的预处理器技术仍然是首选方法。 Visual Studio 提供这些宏是为了易于使用。

结论

虽然后期绑定可能需要灵活性,但隐式链接对于从 DLL 导出 C 类更为实用。上面概述的预处理器技术允许在编译时无缝访问导出的类。

以上是## 如何从 DLL 导出整个 C 类?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn