
STL
WilliamX2020
这个作者很懒,什么都没留下…
展开
-
迭代器的使用和操作总结
迭代器的使用和操作总结 迭代器是一种检查容器内元素并遍历元素的数据类型。C++更趋向于使用迭代器而不是下标操作,因为标准库为每一种标准容器(如vector)定义了一种迭代器类型,而只用少数容器(如vector)支持下标操作访问容器元素。 一、定义和初始化 每种容器都定义了自己的迭代器类型,如vector: vector<int>::iterator iter; //定义一个...转载 2019-02-15 14:06:00 · 4012 阅读 · 0 评论 -
Vector(向量容器)
Vector(向量容器) Vector是一个线性顺序结构。相当于数组,但其大小可以不预定指定,并且自动扩展。它可以像数组一样被操作,由于它的特性我们完全可以将vector看作动态数组。在使用它时, 需要包含头文件include <vector>。 在创建一个vector后,它会自动在内存中分配一块连续的内存空间进行数据存储,初始的空间大小可以预先指定也可以由vector默认指定,这个大...转载 2019-02-15 14:07:14 · 1882 阅读 · 0 评论 -
Deque(双向队列)
Deque(双向队列) Deque(双向队列)是一种优化了的、对序列两端元素进行添加和删除操作的基本序列容器。它允许较为快速地随机访问,但它不像vector把所有的对象保存在一块连续的内存块,而是采用多个连续的存储块,并且在一个映射结构中保存对这些块及其顺序的跟踪。向deque两端添加或删除元素的开销很小。它不需要重新分配空间,所以向末端增加元素比vector更有效。 实际上,deque是对vec...转载 2019-02-15 14:08:28 · 2093 阅读 · 0 评论 -
List(双向链表)
List(双向链表) List(双向链表)是一个线性链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息快(即实际存储的数据)、一个前驱指针和一个后驱指针。它无需分配指定的内存大小且可以任意伸缩,这是因为它存储在非连续的内存空间中,并且指针将有序的元素链接起来。 由于其结构的原因,list随机检索的性能非常的不好,因为它不像vector那样直接找到元素的地址,而是要从头一个一个的顺序查找,...转载 2019-02-15 14:09:07 · 3558 阅读 · 0 评论 -
unordered_multimap类
unordered_multimap 头文件unordered_map template < class Key, // unordered_multimap::key_type class T, // unordered_mu...原创 2019-03-07 19:59:41 · 1392 阅读 · 0 评论 -
unordered_map类
unordered_map 头文件<unordered_map> template < class Key, // unordered_map::key_type class T, // unordered_map:...原创 2019-03-06 11:07:38 · 765 阅读 · 0 评论