目录
step1:写在前面
Qt/C++通过*.dll和*.h调用的三方库最好为纯“C”语言的动态库;
step2:动态库的接口导出
为了更加清晰的说明通过*.h和*.dll调用三方库的流程步骤,特意写了一个简单的纯“C”动态导出库,例子代码如下:
extern "C" BASE_PLUGIN_EXPORT CMDPluginModule* GetPluginModule();
extern "C" BASE_PLUGIN_EXPORT QDialog* GetLayerPropertyDlg();
extern "C" BASE_PLUGIN_EXPORT bool InitialLayerPropertyDlg(QDialog* pDialog, const SysCarto::MapPtr& ptrMap, const SysCarto::LayerPtr& ptrLayer);
编译生成动态库*.dll和头文件*.之后我们就可以进行动态调用了;
step3:动态库的调用
我们使用Qt的QLibrary库首先对生成的动态库dll进行加载,然后通过函数名称获取相对应的函数