存储数据的容器。例如数组。
成都创新互联是一家以成都网站建设、网页设计、品牌设计、软件运维、成都网站营销、小程序App开发等移动开发为一体互联网公司。已累计为混凝土搅拌站等众行业中小客户提供优质的互联网建站和软件开发服务。在STL中,容器分为两类:顺序容器和关联容器。
顺序容器,其中的元素不必排序,但可以排序。例如:vector、list、deque、stack、queue、heap、priority容器的内部结构基本上是一个平衡的二叉树。所谓关联,是指每个元素都有一个键值和一个实值,元素按照一定的规则进行存储。例如:RBtree、set、map、multiset、Multimap、hashtable、hashset、hashmap、hashmultiset、hashMultimap。
接下来,选择一个作为示例。
Vector:它是动态分配存储空间的容器。与C语言中的数组不同,数组分配的空间是静态的,分配后不能改变,而vector会自动分配(扩展)空间。
Set:其内部元素根据元素的键值自动排序。与地图不同,地图的键值是实值,地图可以同时具有不同的键值和实值。
算法,例如排序、复制和特定于容器的算法。我不需要过多地介绍这一点。让我们看看下面的迭代器。
迭代器是STL的精髓。我们将其描述如下:迭代器提供了一种按顺序访问容器中包含的元素的方法,而不暴露容器的内部结构。它将容器从算法中分离出来,这样就可以独立地进行设计。