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

1 静态库

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

2 动态库

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

相关推荐
叶子野格6 分钟前
《C语言学习:编程例题》8
c语言·开发语言·c++·学习·算法·visual studio
6Hzlia10 分钟前
【Hot 100 刷题计划】 LeetCode 152. 乘积最大子数组 | C++ 动态规划 (绝妙 swap 翻转技巧)
c++·leetcode·动态规划
HockerF14 分钟前
cpu原理到c/c++指针
c语言·c++
John.Lewis17 分钟前
C++加餐课-二叉树:进阶算法
数据结构·c++·算法
Q741_14722 分钟前
设计模式之装饰器模式 理论总结 C++代码实战
c++·设计模式·装饰器模式
脱氧核糖核酸__32 分钟前
LeetCode热题100——54.螺旋矩阵(题解+答案+要点)
c++·算法·leetcode·矩阵
!停34 分钟前
C++入门STL容器string底层剖析
开发语言·c++
会编程的土豆41 分钟前
【数据结构与算法】栈的应用
数据结构·c++·算法
神仙别闹41 分钟前
基于C++实现的简单的SMTP服务器
服务器·开发语言·c++
程序设计基础课组1 小时前
codeblock找不到MINGW64编译器怎么办?
c++·codeblocks