静态库和动态库的区别?
程序编译一般需要经过处理 编译 汇编 和链接几个步骤
在我们的应用中,有一些公共的代码是需要反复使用的
就需要把这些代码编译为库文件
在链接步骤中 连接器将从库文件取得所需要的代码
复制到生成的可执行文件中 这种库成为静态库 其特点是可执行文件中
包含了库代码的一份完整的拷贝 缺点是多次使用就会有多份冗余拷贝
静态库和动态库是两种共享程序代码的方式 他们的区别是 静态库在程序的链接阶段被复制到了程序中
和程序运行时候没有关系
动态库在链接阶段没有复制到程序中 而是程序在运行时由系统动态加载到内存中供程序使用
使用动态库的优点是系统只需要载入一次动态库不同的程序可以
得到内存中相同动态库的副本 节省了很多内存。