【发布时间】:2018-10-31 15:07:45
【问题描述】:
如果我在一个集合上循环,并且我想获取当前元素迭代器和下一个元素迭代器,不使用 next() 怎么办?
for(auto it = setOfObjects().begin(); it != setOfObjects().end(); ){
auto current = *it;
auto next = // ?
}
【问题讨论】:
-
为什么不跟踪
current和previous? -
好主意,怎么样?
-
这是作业吗?请解释一下你在做什么。
-
如果你想向前看,你需要增加迭代器,确保它仍然不是
end并取消引用它。另外,请记住,您当前的 for 循环是无限的。 -
我调用了一个将当前对象和下一个对象作为参数的方法。但是当我在做 *next(it) 时,它是 nullprt ...