C++之STL(一)

1、泛型程序设计

目的:提供相同的算法,相同的逻辑,来对不同类型的数据结构进行操作。

所以需要将类型当作参数,也就是参数类型化。

2、什么是STL

STL是基于模板实现的。编译的时候进行实例化

3、STL组件

4、容器算法迭代器关系

迭代器提供了一致的接口,给算法使用,用于遍历容器。算法不关心每个容器的数据结构,这个由容器本身去处理。

5、容器

向量vector:动态数组

deque:每一片内存是连续的

6、如何选择序列式容器

list插入不需要移动数据,但是遍历比较慢。

vector和deque,在中间插入的时候需要移动数据。支持下标访问。访问速度的话,vector相对来说会更快一点。因为deque每片内存之间不一定连续。

deque数据结构示意图

7、迭代器

迭代器是容器与算法的桥梁。

8、算法

9、适配器

相关推荐
别动我齐刘海13 小时前
Linux 系统调试学习1
linux·运维·服务器·c++·学习·机器学习·机器人
jimy117 小时前
C++ 虚函数表:基类和派生类共用一张 vtable 吗?
开发语言·c++
爱吃提升17 小时前
Dev-C++ 5.11 C++断点调试完整教程
开发语言·c++
xlq2232218 小时前
全面复习7
c++
geats人山人海18 小时前
现代c++2.4 虚继承
java·开发语言·c++
csuzhucong18 小时前
天元一号、二号、三号
c++
灯澜忆梦19 小时前
【面向对象编程c++】| 数组与函数
java·数据结构·c++
起个名字费劲死了19 小时前
VisionMaster 十二点标定+单点抓取
c++·visionmaster
Lzg_na21 小时前
僵尸进程、孤儿进程、守护进程:含义、区别与生命周期详解
c++
zhanghaha131421 小时前
C++ 的类是什么(新手保姆讲解,配合 Qt 对照理解)
c++