C++11时代的标准库快餐教程(2) - STL概览

  1. 云栖社区>
  2. 博客>
  3. 正文

C++11时代的标准库快餐教程(2) - STL概览

lusing 2016-10-12 21:55:29 浏览3454
展开阅读全文

STL概览

在进入STL的世界之前,我们先对其中的主要组件做一个鸟瞰:
先来一张层次图:
STL主要组件结构图

如果觉得层次图看不清的话,我们把它重新绘成思维导图吧:

STL主要组件图2

从图中我们可以看到:
STL的核心只有三个大组件:

  • 容器
  • 迭代器
  • 算法

当然,这么大的一个包罗万象的C++标准库,还是有很多其他的组件,比如智能指针、字符串、正则表达式、流式I/O、并发处理等不是跟容器相关的。但是做为核心的容器库,就只有这三大组件。

容器的种类其实蛮少的,大体上分为基本容器和特殊容器两大类。
基本容器按照无序,有序,排序分成了三大类:

  • 有序是需要排照一定的顺序访问,比如数组和链表,但是并没有根据元素的值进行排序。这样的容器只有5个:array数组,vector动态数组,deque两端都可插入的动态数组,list双向链表,forward_list单向链表。
  • 排序是经过比较和排序算法处理之后的针对值

网友评论

登录后评论
0/500
评论