我对双端队列中的迭代器无效感到困惑。
(在this问题中)
以下摘录自《 The C++ Standard Library:A Tutorial and Reference》,
尼古拉·约瑟斯(Nicolai M.
以下是SGI网站的摘录:
恕我直言,双端队列是块的集合,第一个块在一个方向上生长,最后一个块在相反方向上生长。
- - -
- - -
| - - ^
| - - |
V - - |
- - -
- - -
push_back, push_front
应该不会对双端队列迭代器产生任何影响(我同意Josuttis)。正确的解释是什么?标准对此怎么说?
最佳答案
从standard working draft
因此,两者都是正确的。正如Josuttis所指出的,在正面或背面插入不会使对双端队列的元素的引用无效,而仅是对双端队列本身的迭代器。
编辑:more up-to-date draft说的基本上是同一件事(第23.2.2.3节)
关于c++ - 对双端队列中迭代器无效的混淆,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/913980/