stl_组件
2.1、STL中:
2.1.1、包含常用的数据结构。
2.1.2、包含常用的基本算法、结构和算法其实就是一些接口。
2.1.3、提供了一套可扩展的框架。
2.2、六大组件:
2.2.1.容器组件(基本数据类型,存储数据)
1、(序列式容器(vector, deque, list),关联式容器(set,multiset(序号能重复), multimap(key能重复), map通过二叉树实现),)
关联式容器是关联的,是无序的。不能进行排序。
2、频繁的插入或删除,不用在系列内部长距离的跳转,应该选择list,
在vector头部和中间插入删除效率低,在尾部插入与删除效率高,
deque在头部和尾部插入与删除效率高,实际访问速度比vector低。
2.2.2、算法组件(操作数据)(都存在算法头文件中)。
1、适用于任何的容器。
2.2.3、迭代器组件(smart point)(链接Container和Algonthms)(链接容器和算法)。
1、smart point:在一个容器的元素上进行遍历,也可以是容器的一部分,所有的迭代器都实现了++
和*提取值,类似于指针,使用++可以遍历下一个元素,如何遍历取决于容器内部的数据组织形式。
2.2.4、函数对象。
2.2.5、适配器(1.容器适配器,迭代适配器,函数适配器)
1、改变了Container或iterators 或Function Object接口的组件。