在链接下方,我看到了 iterator begin 函数是如何工作的,但不是很清楚。
https://secweb.cs.odu.edu/~zeil/cs361/web/website/Lectures/iterators/pages/implem.html
在他们那里,我看到了 begin 函数,但不明白它是如何工作的
Book::iterator Book::begin()
{
Book::iterator it;
it->pos = authors;
return it;
};
在这个 it
中是对象,但是在这个 it->
中我认为这重载了
operator->()
我认为它的工作方式类似于 it.operator->().pos
但我不确定
在那之后为什么它返回 it
我的问题是什么是 return it
我没有得到清晰的图片。
最佳答案
我很确定这是一个错误,它应该只是 it.pos = authors
因为它试图设置迭代器的值而不是取消引用迭代器(它没有被初始化所以可能会崩溃)并在指向的节点上设置一个值。
关于c++ - 关于迭代器begin()函数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59701661/