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

1 静态库

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

2 动态库

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

相关推荐
点PY几秒前
C++ 中 std::async 和 std::future 的并发性
java·开发语言·c++
不会代码的小猴9 分钟前
C++的第九天笔记
开发语言·c++·笔记
fqbqrr1 小时前
2512C++,clangd支持模块
开发语言·c++
老王熬夜敲代码2 小时前
C++中的thread
c++·笔记·面试
qq_479875433 小时前
C++ 鸭子类型” (Duck Typing)
开发语言·c++
崇山峻岭之间3 小时前
C++ Prime Plus 学习笔记033
c++·笔记·学习
暗然而日章3 小时前
C++基础:Stanford CS106L学习笔记 7 类
c++·笔记·学习
im_AMBER4 小时前
Leetcode 72 数组列表中的最大距离
c++·笔记·学习·算法·leetcode
Dream it possible!5 小时前
LeetCode 面试经典 150_图的广度优先搜索_最小基因变化(93_433_C++_中等)(广度优先搜索(BFS))
c++·leetcode·面试·广度优先
steins_甲乙6 小时前
C++并发编程
开发语言·c++