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();}
相关文章推荐
- C++文件如何在linux下生成动态库So,以及如何使用这个动态库
- linux下c++动态库的生成及使用
- linux c/c++ 动态库和静态库的生成与使用
- C/C++ 编译器和调试器以及静态库、动态库使用汇总(转)
- 将c++代码编成动态库在android中使用
- C/C++ 编译器和调试器以及静态库、动态库使用汇总(转)
- C++静态库与动态库详解与使用
- g++ 编译链接C++代码, 生成与使用静态库和动态库
- C++文件如何在linux下生成动态库So,以及如何使用这个动态库
- C/C++ 编译器和调试器以及静态库、动态库使用汇总
- c++托管使用c#动态库
- VS2010 动态库开发——第一章 演练:创建和使用动态链接库 (C++)
- C/C++ 关于生成静态库(lib)/动态库(dll)文件如何使用(基于windows基础篇)
- C/C++ 直接使用动态库 dlopen
- JNI 使用java调用c++动态库
- C++ 中使用dlopen加载动态库
- 动态库学习 第1章——演练:创建和使用动态链接库 (C++)
- g++ 编译链接C++代码, 生成与使用静态库和动态库
- C/C++ (函数、变量和类)动态库的创建、导出和使用
- C/C++ 编译器和调试器以及静态库、动态库使用汇总