我有两个 C++ 列表,std::list<T> List1
和 std::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/