c++中deque容器

双端数组,与vector主要的区别就在于是否可以在头尾两边都进行插入和删除,vector就像是栈,deque就像是队列,但是在使用时,vector访问元素的速度要比deque更快,这与其内部实现有关

 

 

deque内部有个中控器,维护每段缓冲区中的内容,缓冲区中存放真实数据,中控器维护的是每个缓冲区的地址,使得使用deque时像一片连续的内存空间,也就是说,deque使用的时候,其实他的实际地址并不是连续的,而是离散的,并且也解释了为什么它访问的时候要比vector慢,其中的迭代器也是随机访问的。

 

 

posted @ 2022-05-08 20:11  纸包鱼  阅读(39)  评论(0)    收藏  举报