静态库-动态库的区别与使用
优缺点
分清楚二者区别之后,二者的优缺点就自然可以分出来了。
优点 缺点
静态库 1、 使可执行文件依赖项少,已经被打包到可执行文件中了 1、 使可执行文件变大
2、 编译阶段完成链接,执行期间代码装载速度快 2、 若作为其他库的依赖库,将会造成多余的副本,因为必须与目标文件打包
3、 升级不方便,升级必须重新编译
动态库 1、 动态库可以实现进程之间资源共享,有一份就行 1、 运行期间在加载,将会减慢代码执行速度
2、 升级程序简单,不需要重新编译 2、 增加程序的依赖项,必须跟着可执行文件一起
文件形式
Windows Linux
静态库 .lib Libxxx.a
动态库 .dll与.lib libxxx.so
参考链接:https://www.jianshu.com/p/7175cc69b10a
https://blog.csdn.net/a369189453/article/details/81124685
https://www.jb51.net/article/43743.htm