天天看点

静态链接库与动态链接库 静态库与动态库的区别 静态链接库和动态链接库

静态链接库与动态链接库

静态链接库(  ),也就是你经常看到的*.lib文件;动态链接库(Dynamic Link Library),也就是你经常看到的*.dll文件。如果你是初学者或者对静态库与动态库还没有概念,可以先将其理解为一种仓库,它提供给你一些可以直接拿来用的变量、函数或类,在仓库的发展历史中,经历了“无库-->静态库-->动态库”的过程。

1.静态库(lib)将导出声明和实现都放在lib中。编译时把(lib)文件中被用到的所有函数代码直接链接进目标程序(如exe文件);动态库(dll)相当于一个h文件,是对实现部分(.dll文件)的导出部分的声明。编译后只是将导出声明部分编译到宿主程序中,运行时候需要相应的dll文件支持。

2.静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库中还可以再包含其他的动态或静态链接库。

3.使用静态库时要同时包含.lib和.h文件。

关于动态库的更详细介绍,已经有高人总结的很详细了,我就不班门弄斧了。

请看以下学习资料:《》

继续阅读