静态库-动态库的区别与使用

Posted chua052

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态库-动态库的区别与使用相关的知识,希望对你有一定的参考价值。

优缺点
分清楚二者区别之后,二者的优缺点就自然可以分出来了。

                                       优点                                                                                                                                      缺点

静态库 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

以上是关于静态库-动态库的区别与使用的主要内容,如果未能解决你的问题,请参考以下文章

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

详解Linux下静态库/动态库的生成和使用(含代码示例和操作流程)&&动态库和静态库的区别

动态库与静态库的区别

C语言中静态库和动态库的区别,如何使用它们

动态库和静态库的区别

动态库和静态库的区别