Standard Template Library (STL) 序列容器

Standard Template Library (STL) 序列容器

1. 容器

容器是用来存储和组织其他对象的对象。

2. Standard Template Library (STL) 序列容器

5 个基本序列容器的类模板是 vector<T>array<T, N>list<T>forward_list<T>deque<T>
在特定实例中选择使用哪个模板取决于应用程序。这些序列容器根据它们能有效进行的运算明显地区分开来。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

如果需要随机访问容量可变的容器的内容,而且喜欢总是在序列末尾添加或删除对象,则选择 vector<T> 作为容器模板。虽然可以在矢量中随机地添加或删除对象,但是过程会非常慢,因为必须移动插入点或删除点后面的所有对象。如果可以存储数量固定的元素,则 array<T, N> 的存储和检索操作比 vector<T> 快,因为没有增加容器容量的开销 array<T, N> 容器可以在栈上分配内存,也比普通的数组更灵活。

deque<T> 容器非常类似于 vector<T>,且支持相同的操作,但是它还具备在序列开头添加和删除的功能。list<T> 容器是双向链表,因此可以有效地在任何位置添加或删除。列表的缺点是不能随机访问内容,访问列表内部对象的唯一方式是从头开始遍历内容,或者从末尾开始反向遍历内容。

Standard Template Library,STL:标准模板库

References

Ivor Horton’s Beginning Visual C++ 2013
http://www.wrox.com/WileyCDA/WroxTitle/productCd-1118845714.html

发布了454 篇原创文章 · 获赞 1733 · 访问量 103万+

猜你喜欢

转载自blog.csdn.net/chengyq116/article/details/104452826