C++STL(标准模板库)之容器

容器

在C++ 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对象的对象

容器的优势:它不需要预先知道要存储多少对象,只要创建一个容器对象,并合理的调用它所提供的方法,所有的处理细节将由容器来自身完成。

STL定义的通用容器分为三类:顺序容器,关联式容器,容器适配器。

顺序容器

一种各元素之间有顺序关系的线性表,是一种线性结构的可序群集。顺序性容器中的每个元素均有固定的位置,除非用删除或插入的操作改变这个位置。这个位置和 元素本身无关,而和操作的时间和地点有关,顺序性容器不会根据元素的特点排序而是直接保存了元素操作时的逻辑顺序。

vector 从后面快速的插入与删除,直接访问任何元素
deque 从前面或后面快速的插入与删除,直接访问任何元素
list 双链表,从任何地方快速插入与删除

关联式容器 

(1)、按关键字有序保存元素:

map(关联数组:保存关键字----值对);

set(关键字即值,即只保存关键字的容器);

multimap(关键字可重复出现的map);

multiset(关键字可重复出现的set);

(2)、无序集合:

unordered_map(用哈希函数组织的map);

unordered_set(用哈希函数组织的set);

unordered_multimap(哈希组织的map,关键字可以重复出现);

unordered_multiset(哈希组织的sest,关键字可以重复出现)。

猜你喜欢

转载自blog.csdn.net/Doutd_y/article/details/82154343