DLL项目:
#ifndef _TestDll_
#define _TestDll_
#include <stdio.h>
/*
DLL导出测试代码
1.一个DLL可以导出变量,函数,C++类
2.但是在实际开发中我们应该避免从DLL中导出变量,因为这个等于去掉了代码中的一个抽象层
从而使得代码更加难以维护
3.只有当导出的C++类的模板使用的编译器和导入的C++类的模板使用的编译器是同一厂家提供的时,
我们才可以导出C++类
4.编写C++代码的时候才会用到 extern "C" ,因为C++编译器会对函数名和变量名进行改编,
使用在链接的时候会发生严重的问题。
*/
#ifdef _MyExport_
#define My_Lib extern "C" __declspec(dllexport)//导出
#else
#define My_Lib extern "C" __declspec(dllimport)//导入
#endif
//导出函数
My_Lib void MyPrintf();
#endif
#define _MyExport_//导出
#include "TestDll.h"
//函数实现
void MyPrintf()
{
printf("Hello \n");
}
使用DLL的项目:
1.将DLL项目的头文件,DLL文件,LIB文件都复制到使用DLL项目的目录下面
2.将当前项目的目录添加到库目录里面