例如有MyClass类,创建DLL工程,创建.h文件和.cpp文件,我这里以myclass.h,myclass.cpp为例。
myclass.h文件
class _declspec (dllexport) MyClass
{
public:
void show();
};
myclass.cpp文件:类成员函数的具体实现
void MyClass::show()
{
cout<<"自定义类MyClass"<<endl;
}
生成dll文件和lib文件(工具栏--》生成--》生成解决方案),至此,在你的工程文件夹下面的debug文件夹下会看到生成的dll文件与lib文件。
DLL隐式调用:
创建控制台应用,建立一个空项目就可以,添加.h文件和.cpp文件,我这里以test.h和test.cpp为例。
为工程添加完test.h和test.cpp后,先编译一下,生成debug文件(注意要写main()函数)
将DLL工程生成的dll文件和lib文件添加到test工程中,具体方法如下:
把你生成的dll添加到debug目录下(有.exe文件的目录),lib文件添加到工程中(工程文件右击--》添加--》现有项--》找到你的lib文件--》添加),.h文件也需要添加到程序运行目录下(不是debug目录,是你工程存放h文件与cpp文件的目录),但是.h文件需要做修改,将
class _declspec (dllexport) MyClass改为class _declspec (dllimport) MyClass
test.h文件:
#ifndef _TEST_H__
#define _TEST_H__
这里包含头文件
#include<iostream>
此处需要包含#include“myclass.h”
using namespace std;
#endif
test,cpp文件:
包含#include“test.h”
int main(int argc,char* argv[])
{
此处可以使用MyClass类了
MyClass mc;
mc. show();
getchar();
return 0;
}
注意:dll文件、lib文件、.h文件添加是非常重要的,不能放错位置,.h文件一定要做修改
将C++类 生成 DLL动态链接库以及DLL隐式调用
于 2022-05-06 11:54:03 首次发布