3
我正在为boost容器创建一个包装器DLL(map,vecrtor,set ..)。在我的应用程序中,我想将C++对象从DLL导出到客户端。所以我剩下两个出口选项:从DLL中导出C++对象
- 使用
(_declspec)dllexport
导出C++类并在客户端中使用。 - 提供一个只有纯虚函数的抽象类(如COM中的接口),并且只从DLL中导出单个方法(例如
CreateMap
)。
我在客户端广泛使用容器(地图,矢量..)。
任何人都可以帮助我,这将是出口的最佳方法吗?
map,vector和set是模板,你打算如何将它们放在DLL中? –
map,vector是Dll的私人类成员 – Ushus
@ user3283893由于问题处于搁置状态,因此我无法将其作为答案发布,但请查看https://github.com/jbandela/cppcomponents这是一个C + +11只有头的库,允许您将C++对象放入DLL中,并且可以从其他编译的exe或DLL中调用它们,即使它们是用不同的C++编译器或标准库编译的。如果你想使用它,让我知道,我可以帮你开始 –