我正在构建另一个应用程序将使用的 DLL。我想在从函数调用返回之前将某些数据的当前状态全局存储在 DLL 的内存中,以便我可以在下一次调用该函数时重用状态。
为此,我必须保存一些迭代器。我正在使用 std::stack 来存储所有其他数据,但我不确定我是否也可以使用迭代器来做到这一点。
将列表迭代器放在容器类中安全吗?如果没有,您能否建议一种方法来存储指向列表中元素的指针,以便我以后可以使用它?
我知道使用 vector 而不是列表来存储我的数据可以让我存储下标并非常容易地重用它,但不幸的是我只能使用 std::list。
最佳答案
仅当列表被销毁或“指向”元素从列表中删除时,列表的迭代器才会失效。
关于c++ - 在容器中存储迭代器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1137116/