在此 C++ 代码中,迭代器引用列表的哪个元素?
In this C++ code, what element of the list does the iterator refer to?
代码如下:
listOfFoos::iterator new_foo_it = listOfFoos.insert(listOfFoos.end(),newFoo);
listOfFoos
就是 std::list
个 foo
个对象。通常你会写:
listOfFoos::iterator new_foo_it = listOfFoos.begin();
我也理解 list.insert()
会在指定的索引处插入一个 newFoo
,然后创建迭代器。但是我不知道插入如何影响迭代器的位置。
手册中有详细记载。
An iterator that points to the first of the newly inserted elements.
在你的情况下 new_foo_it
在单个元素的 listOfFoos.insert
之后,指向列表的最后一个元素,它指向 newFoo
.
代码如下:
listOfFoos::iterator new_foo_it = listOfFoos.insert(listOfFoos.end(),newFoo);
listOfFoos
就是 std::list
个 foo
个对象。通常你会写:
listOfFoos::iterator new_foo_it = listOfFoos.begin();
我也理解 list.insert()
会在指定的索引处插入一个 newFoo
,然后创建迭代器。但是我不知道插入如何影响迭代器的位置。
手册中有详细记载。
An iterator that points to the first of the newly inserted elements.
在你的情况下 new_foo_it
在单个元素的 listOfFoos.insert
之后,指向列表的最后一个元素,它指向 newFoo
.