第3课:编译与使用DLL动态链接库

DLL库在C++里面站有重要的地位,一个项目一般都会有非常多的功能,而这些功能,说不定已经有人封装成了dll库,可以直接拿来用
比自己写的代码成熟,效率又高,本着不重复发明轮子的思想,学习如何编译与使用dll库是很重要的

1.编译dll
如果直接拿到了dll文件,那很好,但是github上很多只提供了源码,需要自己编译
编译方式很简单,第一步先新建一个或者打开一个项目,项目类型选择dll,如图一,这一步非常重要
第二部点击编译按钮,像其他项目一样,进行编译即可

2.使用dll
有隐式调用和显式调用两种,各有优劣吧,我们这里以显式调用为例:
关键的语法是3句
LoadLibrary
GetProcAddress
FreeLibrary

首先我们新建一个c++项目test
然后会自动生成头文件和源文件
打开源文件test.cpp
#include "stdafx.h"


int _tmain(int argc, _TCHAR* argv[])
{
	Dllfun test;
	HMODULE hDLL = LoadLibrary("godeye.dll"); //加载dll文件 
	if (hDLL != NULL) {
		test = (Dllfun)GetProcAddress(hDLL, "godeye");
	} else {
		FreeLibrary(hDll);
	}
}

调用结束,是不是很简单

图一:
打赏  如对你有帮助,请我喝杯咖啡吧!