静态链接库与动态链接库

来源:互联网 发布:袁劲松 思维 知乎 编辑:程序博客网 时间:2024/06/06 09:23
静态链接库
会生成lib文件(实现)和.h文件 (声明)
使用静态链接库的方法
1.将这两个文件复制到项目工程目录下 包含头文件 #pragma comment(lib,".lib")
2.在项目设置中,链接是将.lib文件也链接进来
静态链接库只是单纯将代码全部生成在项目中,并没有实现真正的模块化。


动态链接库的生成 (windows下默认为外平栈)
extern "C" _declspec(dllexport) __stdcall(调用约定 内平栈) 函数返回类型 functionname(参数)
extern 防止c++函数重载 按照c语言方式编译
动态链接库
会生成lib文件(声明)和dll文件(实现)
1.隐式链接
1.将这两个文件复制到工程目录下
2.#pragma comment(lib,".lib")
3.声明 extern "C" _declspec(dllimport) __stdcall(调用约定 内平栈) 函数返回类型functionname(参数)

2.显示连接
1.声明函数指针
2.声明函数指针变量
3.将dll加载到内存中LoadLibrary()
4.获取函数地址GetProcAddress(module,函数名);
5.调用函数

原创粉丝点击