STL源码——序列式容器deque

1.

STL源码——序列式容器deque

2. 原书deque有错误

STL源码——序列式容器deque

应该修改为

typedef _deque_iterator<T,Ref,Ptr,BufSiz> self

不然不知道self到底是什么类型,太坑人了,在这里我还想了好久。

3.cur这个指针每次更换缓冲区都要重新更新。

4.

STL源码——序列式容器deque

5. last指向的是一个缓冲区的尾,什么叫尾,就是最后一个元素的下一个位置

6. erase

STL源码——序列式容器deque

需要注意的是copy_backward的第三个参数是目的迭代器的end(),copy的第三个参数是目的迭代器的begin()

STL源码——序列式容器deque

copy主要是复制元素序列到目的序列的左边,copy_backward主要是复制元素序列到目的序列的右边