在QLinkedList的insert函数中,它返回一个迭代器
iterator QLinkedList::insert(iterator before, const T &value)
是永久返回的迭代器吗?我可以通过使用返回的迭代器找到我插入的原始value
吗?即使我在列表中插入/删除了许多其他项目?
答案 0 :(得分:1)
从文档中我假设QList::iterator
不是“永久”,而QLinkedList::iterator
在某些情况下。
QList
可以在同一列表中使用多个迭代器。但是,请注意 在QList上执行的任何非const函数调用都将呈现 所有现有的迭代器都未定义。如果你需要保持迭代器超过 很长一段时间,我们建议您使用QLinkedList而不是 的QList。
QLinkedList
可以在同一列表中使用多个迭代器。如果您要添加项目 列表,现有的迭代器将保持有效。如果您删除项目 从列表中,指向已删除项目的迭代器将成为 悬空迭代器。