string是类似vector的,但更适用于字符。

deque,双端队列,但不是用list实现的。

queue,单端队列,使用deque或者list实现。在默认情况下使用deque实现。

array不是内置数组,是一种数据结构,优于内置数组。

有的时候容器会需要更多的参数。如对于一个没有默认构造函数的类型定义一个定长度的vector时,需要提供初始化器。

Untitled

Untitled

Untitled

c.emplace(inits)用初始化器添加一个元素。

reference是引用

反向迭代器++是到上一个元素。

Untitled

容器的拷贝有两种

  1. 拷贝整个容器,必须保证元素类型相同
  2. 用两个迭代器指定拷贝范围,不要求元素类型相同,只需能够转换即可

当使用列表初始化时不但指定了值也指定了大小。

只有顺序容器支持初始化大小。

array

在指定类型外还要指定大小。

$$ array<type,size>\ name; $$