dll文件Dynamic Link Library(即“动态链接库”)的缩写。使用dll文件好处多多。
1.写dll文件
步骤一:建立win32项目,写好项目名称。
步骤二:勾选新建DLL文件,并勾选空项目。
步骤三:新建Add.h和Add.cpp文件。并写入如下内容
//-----Add.h-----
#ifndef _Add_H_
#define _Add_H_
#define EXPORT_DLL _declspec(dllexport)
extern "C" EXPORT_DLL int add(int a, int b); // 即 int add(int a,int b)
#endif // !_Add_H_
//----Add.cpp-----
#include "Add.h"
int add(int a, int b)
{
return (a + b);
}
步骤四:项目文件夹中即可编译生成Add.dll和Add.lib文件,这两个文件和刚刚新建的Add.h文件一会需要用。
2.调用生成的dll文件
步骤一:新建Win32控制台应用程序,并新建项目文件test_dll
步骤二:往项目中添加test_dll.cpp,并写入如下内容
#include <iostream>
extern "C"
{
#include "Add.h"
}
using namespace std;
int main()
{
int add_a = 10;
int add_b = 20;
int a = add(add_a, add_b);
cout << a << endl;
return 0;
}
会发现提示错误,因为找不到Add.h,自然也显示未定义add()函数,这是因为上述操作还没有把dll文件及Add.h文件包含进来。
步骤三:类似配置Opencv等第三方库的操作,需要把自己写的dll文件包含到本项目中。为规范起见在test_dll.cpp文件夹同级目录下新建include文件夹并放入Add.h、新建lib文件夹并放入Add.lib,并将Add.dll文件放在这里,或放在exe文件所在文件夹也行。
步骤四:需要在附近包含目录、附加库目录、附加依赖项分别选择刚刚新建的include文件夹、刚刚新建的lib文件夹、填入“Add.lib”三个操作
步骤五:ctr+f5。成功了(^▽^)