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 文件拷贝到 刚才新建的工程目录下
在工程中新建源文件写入代码为
-
-
-
-
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();
-
-
}
编译并运行即可。