buffer是缓冲区,五个缓冲区需要串接起来。连续是假象,分段是事实。 deque的迭代器是一个class,内部有四个元素:cur,first,last,node。其中node指向控制中心,控制中心是一个vector实现的,控制中心++会跳到下一个缓冲区。first,last是同一块缓冲区的头和尾,前闭后开。
iterator的大小为4个指针。
这里注意size_t函数。
inline size_t _deque_buf_size(size_t n,size_t sz)
{
return n!=0? n:(sz<