从DLL动态导入C++类

Sha*_*har 13 c++ windows import dll

从DLL导入C++类的正确方法是什么?我们正在使用Visual C++.

有dllexport/exports.def + LoadLibrary + GetProcAddress三连胜,但它不适用于C++类,只适用于C函数.这是由于C++名称错误吗?我该如何工作?

Dro*_*per 12

您需要添加以下内容:

extern "C"
{
...
}
Run Code Online (Sandbox Code Playgroud)

避免功能损坏.

您可以考虑编写两个简单的C函数:

SomeClass* CreateObjectInstace()
{
    return new SomeClass();
}

void ReleaseObject(SomeClass* someClass)
{
   delete someClass;
}
Run Code Online (Sandbox Code Playgroud)

通过仅使用这些功能,您可以在以后添加/更改对象创建/删除的功能.这有时被称为工厂.


Sha*_*har 5

http://www.codeproject.com/KB/DLL/XDllPt4.aspx上找到了解决方案

谢谢你的努力男人和女孩