【C++】动/静态库扩展名以及优缺点

1 静态库

静态(函数)库 扩展名为(.a或.lib,.a是linux侧,.lib是windows侧),静态库在编译时,会直接整合到目标程序中,编译出来的文件会比较大。
优点 :编译出的可执行文件 可以独立运行,不再需要向外部要求读取函数库的内容。
缺点:从升级难易度来看没有优势,如果函数库更新,需要重新编译。

2 动态库

动态(函数)库 扩展名为(.so或.dll,.so是linux侧,.dll是windows侧),动态库在编译时,在程序里只有一个"指向"的位置,也就是说,当可执行文件需要使用到 函数库 中的内容时,程序才会去读取 函数库 来使用。
优点 :方便产品功能升级,只要替换对应动态库即可,不必重新编译整个可执行文件。
缺点:可执行文件无法单独运行。

相关推荐
烧酒同学1 小时前
【C++】记录size of std::vector的巧妙坑
开发语言·c++·图形渲染
@呱呱爱学习3 小时前
C++大成之路_ STL容器_ Vector
开发语言·c++
码匠许师傅4 小时前
【C++ 面试真题】19. 聊聊 C++ 的迭代器
开发语言·c++·面试
qeen874 小时前
【数据结构】红黑树的算法原理解析与实现
开发语言·数据结构·c++·算法·红黑树
码匠许师傅4 小时前
【C++ 面试真题】20. 聊聊 C++ 的标准库常用算法
c++·算法·面试
白色冰激凌5 小时前
[SECS/GEM研究] (六)SML与数据序列化
c++·secs/gem
_小柏_6 小时前
总结下最近面试出现的问题
c++·面试
我是慎独6 小时前
VulkanSceneGraph学习教程(十一)
c++·学习
stolentime6 小时前
AT_agc066_a [AGC066A] Adjacent Difference题解
c++·算法·贪心算法·构造
程序猿编码6 小时前
不用PyTorch,我用C++手写了一个能认手写数字的神经网络
c++·pytorch·神经网络·大模型