C++STL Deque容器详解
高频插入删除操作的容器首选,deque真的是个被低估的狠角色。
内存分段式设计,deque在插入删除时不用像vector那样整体搬家,效率自然高不少。是你在头尾来回加减元素的时候,用它就对了。
操作接口也挺友好,像push_front
、pop_back
这些,都是开箱即用的老熟人。而且支持双向迭代器,遍历起来也不卡顿,写法跟vector差不多。
你要是老想着“内存要连续”,那deque不是你的菜。但如果你更在意操作灵活性和性能表现,那它还蛮合适的。
详细内容可以看看C++ 内存管理探索,配合这篇文章效果更好。如果你对 STL 源码也感兴趣,不妨顺手点进这篇源码瞅一眼。
嗯,总的建议是:deque适合用在需要频繁头尾增删的场景,比如任务队列、双端缓存。你要是正好有这类需求,可以上手试试,体验还不错。
292.5KB
文件大小:
评论区