静态库的基本概念
静态库是指在我们的应用中,有一些公共代码是需要反复使用,就把这些代码编译为“库”文件;在链接步骤中,连接器将从库文件取得
所需的代码 ,复制到生成的可执行文件中的这种库。
静态库的生成
静态库的调用
动态库的基本概念
动态库是一种在程序运行时才被加载的库文件,它包含了函数和数据,可以被多个程序共享。
动态库的生成
先宏定义MATHLIBRARY_EXPORTS
写导出语句
动态库的调用
在工程配置中调用
导入头文件,引用
在代码中语句加载lib调用
#pragma comment(lib, "creat_static_lib.lib")
在代码中语句加载dll
调用
将dll
文件复制到dbug
下面,使用以下程序指令动态加载
HINSTANCE Dll = LoadLibrary(L"test.dll");
if (Dll == NULL) {
std::cerr << "无法加载DLL! 错误码: " << GetLastError() << std::endl;
return 1;
}
typedef void (*Func)(); // 定义函数指针类型
Func add = (Func)GetProcAddress(Dll, "fun1");
add();
FreeLibrary(Dll);
return 0;