在讲述动态库与静态库区别之前先介绍一下动态库与静态库的定义:
静态库:在执行程序之前就已经加入到执行代码;(后缀为“.a”)
动态库:在执行程序启动时加载到执行代码中;(后缀为“.so”)
动态库与静态库之间的优缺点:
静态库:执行效率高、编译速度低、使执行文件过于庞大、占用内存大、不易升级、容易布局;
动态库:执行效率低、编译速度高、占用内存小、升级容易、不易布局。
接下来介绍为什么做库?
做库的原因很简单,在做开发的公司或者个人,当一款具备功能的软件开发出来,有另一方想用你的这个功能时,你肯定不能把自己的源码卖给别人,此时库的作用就体现了。简单的说就是只提供功能、看不到源码、卖给别人的是库。