我有两个C++列表,std::list<T> List1和std::list<T*> List2;.现在,我想多次做以下操作:
List1.push_back(new_object);
List2.push_back(&List1.back());
Run Code Online (Sandbox Code Playgroud)
我的问题:List2中的引用是否在每个步骤后保持有效?即:List2中的第一个元素仍然是指List1中的第一个元素吗?
是的,它保持有效.std::list插入不会使迭代器无效(或者在这种情况下指向内容的指针).