其他内容参考:
STL六大部件(二)_studyAlisa的博客-CSDN博客https://blog.csdn.net/alisalfd/article/details/124987091
目录
简要介绍STL六大部件,并对容器做具体分析。
1.六大部件
六大部件分别是:仿函数、算法、迭代器、容器、分配器、适配器;
其中,最重要的是容器和算法。
2.容器分析
(1)分配器是组成容器的元素。算法和容器通过迭代器进行关联。
(2)容器分三类:序列式、关联式、不定序容器;
关联式:map/multimap、set/multiset
序列式:array、vector、list、deque
不定序容器:unordered map/multimap、unordered set/multiset
(3)stack、queue底层是deque,只不过deque的相关功能被禁用,他们可以看做是适配器。
(4)unordered map/multimap、unordered set/multiset 在C++11之前叫做hash map/set等。
(5)关联式通过红黑树实现,不定序容器通过hash表实现。
(6)序列式中array是C++11新增的内容;
(7)序列式中还有forwardlist,是单向链表;list是双向链表;deque存储看似连续,实际存储的内容不不是连续的;vector存储空间可以变化,每次以2倍速度增长;