你的位置:首页 > 操作系统

[操作系统]静态库介绍与简单演练


1、静态库和动态库都是闭源库,不公开源代码。

静态库:.a和.framework

动态库:.dylib和.framework(iOS9取消了.dylib,使用.tbd替代)

 

2、静态库和动态库在使用上的区别:

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

动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存

注意:项目中如果使用了自制的动态库,不能被上传到AppStore。

        因为:动态库存在于系统中,可以更新,不用上传AppStore就可以(Apple不赚钱了),存在较大风险(注入攻击,冒充系统类库,APP之间传值,因为用的都是相同的东西)。

 

3、静态库创建:

 

4、静态库目录介绍:

 

5、新建项目并导入静态库:

 

6、使用导入的静态库的方法:

 

7、添加自定义源文件的时候,还需要手动添加其头文件:

 

我们再来看看生成的文件,可以看到已经有了自定义源文件的头文件了: