首先说明一点,网上关于在C++下封装DLL已经很多了,这里对这些做一个总结,同时对我在做项目过程中出现的问题进行记录。
首先一点就是在新建工程的时候,新建Win32控制台应用程序,勾选DLL,空工程完成创建工程向导。
封装DLL其实比较简单,根据孙鑫的视频,封装总共有两种方法。
1 在需要导出的函数前面加入_declspec(dllexport),例如函数:
int add(int a, int b);变成:
_declspec(dllexport) int add(int a, int b);
这样,VS2008不用做什么设置,即可生成一个dll文件和一个lib文件,两个文件都有用处。但是这样的封装会导致函数名称被改变,函数名
之前和之后会有很多乱字符,也就是说函数名在这个时候已经被改变了。如果后面用到这个动态链接库的时候,若使用的任然是
C++封装DLL详解与实践

本文总结了在C++环境下封装DLL的方法,包括在新建Win32控制台应用程序时选择DLL选项,以及两种导出函数的方式:_declspec(dllexport)和使用DEF文件。通过DEF文件导出函数的优点是无需修改源代码,但不支持重载函数导出。生成的DLL和LIB文件可在DEBUG目录找到,使用dumpbin或depend工具可检查导出函数。
最低0.47元/天 解锁文章
1391





