VS2015 生成Dll和调用

创建一个win32项目,名称为dll1.首先建立头文件dll_test.h

#pragma once
#ifdef MYDLL_EXPORTS
#define MYDLL_API __declspec(dllexport) 
#else
#define MYDLL_API __declspec(dllimport) 
#endif
namespace MathFuncs
{
	extern "C"  MYDLL_API  double Add(double a, double b);
	extern "C"  MYDLL_API  double Mul(double x, double y);
	}

创建dll_test.cpp

#include "dll_test.h"
#include <iostream>
using namespace std;
namespace MathFuncs
{
	double Add(double a, double b)
	{
		cout << "a+b=" << a + b << endl;
		return a + b;
	}
	double  Mul(double x, double y)
	{
		cout << "x*y=" << x*y << endl;
		return x*y;
	}
}

点击生成解决方案后,生成相应的dll和lib文件,新建一个调用dll的项目,用于测试,最简单粗暴的办法就是把生成的dll和lib还有dll_test.h这三个文件放到新建的项目中

#include <iostream>
#include"dll_test.h"
#pragma comment(lib, "dll1.lib")  
using namespace std;
using namespace MathFuncs;
int main()
{
    double a = 2, b = 3,x=10,y=9;
	cout << "a=" << a << endl;
	cout << "b=" << b << endl;
	cout << "x=" << x << endl;
	cout << "y=" << y << endl;
	double t1=Add(2, 3);
	double t2=Mul(10, 9);
	return 0;
}

输出如下:

猜你喜欢

转载自blog.csdn.net/zzzzjh/article/details/84574974
今日推荐