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

1 静态库

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

2 动态库

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

相关推荐
C^h3 小时前
c++ string
开发语言·c++
raindayinrain3 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的3 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao4 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
小徐不徐说5 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
大都督会赢的5 小时前
C++第一节课
开发语言·c++
UIU1145 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
TMedical6 小时前
MedPlanning 截骨模拟矫形功能
c++·图像处理·人工智能·qt·健康医疗
qq_406981036 小时前
共享变量一 关于extern与const
开发语言·c++
chari克里8 小时前
QT5.15.2 + msvc2022部署全流程说明(windows可联网环境)
开发语言·c++·qt