1.vs2015下生成DLL文件
文件->新建->项目
点击确定选择dll选项和空项目选项
点击完成
为项目添加c++源文件mydll.cpp
extern "C" // 此处extern "c" 为解决c/c++兼容问题
{
_declspec(dllexport) int add(int a, int b)
{
return a + b;
}
extern "C"
{
_declspec(dllexport) int sub(int a, int b)
{
return a - b;
}
}
编译生成 成功后会在工程根目录生成Win32Project1.dll文件
2.对dll文件的调用
显示调用动态链接库
新建C++工程
把生成的 Win32Project1.dll 文件拷贝到 刚才新建的工程目录下
在工程中新建源文件写入代码为
#include<iostream>
#include<windows.h>
void main()
{
HINSTANCE mydll = LoadLibrary( "Win32Project1.dll"); //载入dll文件
if (mydll == NULL)
{
return;
}
int(*add)( int, int) =( int (*)( int , int )) GetProcAddress(mydll, "add"); //获取函数指针
/*
等价于
typedef int(*myadd)(int, int); //给 函数指针int (*)(int, int ) 取别名 myadd
myadd a = (myadd) GetProcAddress(mydll,"add"); //获取函数地址
*/
if (add == NULL)
{
return;
}
std:: cout << add( 1, 2);
std:: cin.get();
}
编译并运行即可。