您的位置:首页 > 编程语言 > C语言/C++

C++动态库导出类,及使用

2013-10-29 21:51 513 查看
c++动态库导出类,使用时需要有一个虚基类
//dll内部 xxx.hclass XXX_API xxx : public virtualXXX{//基类函数public:void functionOne();void functionTwo();//子类函数void functionTree();};extern "C" XXX_API virtualXXX *create();
//导出库定义
#if defined(_WINDOWS)#if defined(XXX_API)#define  XXX_API  __declspec(dllexport)#else#define  XXX_API  __declspec(dllimport)#endif#else#define  XXX_API#endif
//虚基类 virtualXXX.hclass virtualXXX{public:virtual void functionOne();virtual void functionTwo();};
//主程序加载dll#include <windows.h>#include <virtualXXX.h>typedef virtualXXX *(create)(void);int main(){HINSTANCE dllHandle = NULL;dllHandle = LoadLibrary("xxx.dll");create *classHandle = (create*)GetProcAddress(dllHandle,"create");virtualXXX * xxxHandle = (virtualXXX*)classHandle();xxxHandle->functionOne();xxxHandle->functionTwo();}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: