动态链接库和静态链接库的对比

静态链接库

静态连接库就是把(lib)文件中用到的函数代码直接链接进目标程序(exe等可执行文件),程序运行的时候不再需要其它的库文件。

动态链接库

动态链接就是把调用的函数所在文件模块(DLL)和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从DLL中寻找相应函数代码,因此需要相应DLL文件的支持。

举例:CoreFoundation就是用C写的一个动态链接库

对比

1 、静态链接生成的可执行文件体积较大,包含相同的公共代码,造成浪费;动态则小

2 、动态链接库的使用依赖于dll,若不存在会造成功能异常或者崩溃

3 、不同编程语言编写的程序只要按照函数调用约定就可以调用同一个DLL函数

4 、扩展性好,适用于大规模的软件开发,使开发过程独立、耦合度小,便于不同开发者和开发组织之间进行开发和测试

5、动态库运行速度比静态链接库慢


对于iOS开发来说,应当减少动态链接库的个数,提高应用的启动速度

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容