c++:push_back() 和 back() 与指针的行为

标签 c++ list pointers

我有两个 C++ 列表,std::list<T> List1std::list<T*> List2; .现在,我想多次执行以下操作:

List1.push_back(new_object);
List2.push_back(&List1.back());

我的问题:List2 中的引用在每一步之后是否仍然有效?即:List2 中的第一个元素是否仍然引用 List1 中的第一个元素等?

最佳答案

是的,它仍然有效。 std::list 插入不会使迭代器(或在这种情况下指向内容的指针)无效。

关于c++:push_back() 和 back() 与指针的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40341208/

相关文章:

python - PyGILState_Ensure() 导致死锁

c++ - Boost property_tree 用于存储指针

c - 空结构上的段错误?

python - 如何迭代两个字典并将它们保存在python列表中

c - 不明白为什么会出现段错误

c - 空指针操作

c++ - Visual Studio 项目设置中的多个相对父目录

c++ - 在编译时收集模板参数

python - 如何设置深度嵌套的 JSON 值?

Python - 将包含 IP 地址和不同数据的文本文件的列表转换为 CSV