说一下静态库和动态库之间的区别


  • 静态库:以.a 和 .framework为文件后缀名。

  • 动态库:以.tbd(之前叫.dylib) 和 .framework 为文件后缀名。

  • 静态库:链接时会被完整的复制到可执行文件中,被多次使用就有多份拷贝。

  • 动态库:链接时不复制,程序运行时由系统动态加载到内存,系统只加载一次,多个程序共用(如系统的UIKit.framework等),节省内存。

  • // 静态库.a 和 framework区别.a 主要是二进制文件,不包含资源,需要自己添加头文件
    .framework 可以包含头文件+资源信息