1.首先是创建DLL,导出函数与导出变量
// 头文件
#ifndef _THE_CLASS_H
#define _THE_CLASS_H
#ifdef _EXPORTDLL
#define MYLIBAPI extern "C" __declspec(dllexport)
#else
#define MYLIBAPI extern "C" __declspec(dllimport)
#endif
MYLIBAPI int x;// 导出变量
MYLIBAPI int Add(int a, int b);// 导出函数
#endif
对于源文件,应该在源文件的前面加入#define _EXPORTDLL,如下
#define _EXPORTDLL //需要在#include "Mylib.h" 前面定义
#include "Mylib.h"
int Add(int a, int b)
{
return a + b;
}
导出类中的一部分函数,和上面一样的方法,如果需要导出类中所有的函数,在将CAL_API_DLL加在class 和 CCal的中间即可
#ifndef _CAL_CLASS_H
#define _CAL_CLASS_H
#ifndef _CAL_API_DLL
#define CAL_API_DLL __declspec(dllexport)
#else
#define CAL_API_DLL __declspec(dllimport)
#endif
class CCal
{
public:
CAL_API_DLL CCal();
CAL_API_DLL ~CCal();
int CAL_API_DLL Add(int a, int b);
int Sub(int a, int b);
};
#endif
2.DLL的使用
lib 和 .h文件直接放在代码目录下面
dll 放在和exe相同的文件目录即可