一、隐式调用
编译程序时需要头文件、lib文件,运行时需要DLL文件,并且运行过程中DLL文件一直被占用。
#pragma comment(lib,"Common.lib")
二、显式调用
编译时什么都不需要,在需要使用DLL中的函数时,通过LoadLibrary()和FindProcAdress()这两个API调用。
只需要一个DLL文件即可,而且在需要使用的时候DLL才被占用,使用完毕即解除占用(FreeLibrary)。
注:
DLL中提供给外部使用的类或函数,需要使用 __declspec(dllexport) 修饰。如:
- class__declspec(dllexport)Controller
- {
- ...
- };