c++极简总结 — STL(一)

    科技2024-06-09  73

    标准模板库STL

    标准模板库(Standard Template Library)是C++库的一部分。其中容器(container),算法(algorithm),和迭代器(iterator)是STL 的三个基本组成部分。

    1、STL 六大组件

    容器:各种数据结构,如vector、set、map等,存放数据。算法:各种常用的算法,如sort、find、copy,for_each()等。迭代器:是访问器中的对象的一种机制,提供一种方法,访问(正向,反向,双向,随机)容器中的元素。仿函数:行为类似函数适配器:一种用来修饰容器或者仿函数或者迭代器接口的东西。空间配置器:负责空间的配置与管理

    2、STL中的容器、算法、迭代器

    2.1容器

    STL容器,就是实现一些运用广泛的数据结构。 例如:数组,链表,树,栈,队列,集合,映射表等。 容器分类 容 器 { 序 列 式 容 器 : 强 调 值 的 排 序 , 容 器 中 每 个 元 素 均 有 固 定 位 置 。 关 联 式 容 器 : 没 有 严 格 的 顺 序 关 系 。 容器 \begin{cases} 序列式容器:强调值的排序,容器中每个元素均有固定位置。\\ 关联式容器:没有严格的顺序关系。 \end{cases} { 序列式容器: vector,deque,list 关联式容器: set,multiset,map,multimap

    2.2 算法

    提供了,排序,查找,计数,遍历,等算法。

    2.3 迭代器

    容器和算法之间的粘合剂,提供一种方法,使之能够依序寻访某个容器所含的各个元素,而又无需暴露该容器的内部表示方式。 迭代器种类:

    种类功能支持运算输入迭代器对数据只读访问只读,++,==,!=输出迭代器对数据只写访问只写,++前向迭代器读写操作,并能向前推进迭代器读写,++,==,!=双向向迭代器读写,可向前向后推进读写 ,++,–随机访问迭代器读写,可以以跳跃的方式访问任意数据读写 ,++,–,[n],-n,<,>,<=,>=
    Processed: 0.011, SQL: 8