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

1 静态库

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

2 动态库

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

相关推荐
春栀怡铃声7 小时前
【C++修仙录03】进阶篇:多态
c++
小灰灰搞电子7 小时前
C++ boost::container 详解:高性能容器库完全指南
开发语言·c++·boost
Y_Bk7 小时前
第十七届蓝桥杯C/C++A组省赛
c语言·数据结构·c++·算法·蓝桥杯
Brilliantwxx7 小时前
【C++】 C++11 知识点梳理(上)
开发语言·c++
江屿风7 小时前
C++图论基础单源最短路-常规版dijkstra算法/堆优化版dijkstra算法/bellman-ford 算法/spfa 算法流食般投喂
开发语言·c++·笔记·算法·图论
Molesidy7 小时前
【Linux】【C++】Linux下的C++编程以及基于GDB的VSCode的C++调试
开发语言·c++
程序猿编码8 小时前
子域猎手:一款高性能DNS枚举工具的设计与实现
linux·c++·python·c·dns
Mortalbreeze8 小时前
C++11类的新特性:移动语义、default、delete、override详解
开发语言·c++
Frank学习路上8 小时前
【C++】面试:面向对象与多态
c++·面试
Shadow(⊙o⊙)8 小时前
信号1.0,信号概念、signal()处理、前后台进程、闹钟设置、初识信号三张表。
linux·运维·服务器·开发语言·c++