假设我有一个迭代器it,它指向map的某些元素。
另外我还有另一个迭代器it1,我想做这样的事情

it1 = it + 1;

我们如何在C++中实现这一点,因为上述声明在C++中给出了错误。

最佳答案

在C++ 11中,您说auto it1 = std::next(it, 1);

在此之前,您必须说些类似的话:

std::map<K, T>::iterator it1 = it;
std::advance(it1, 1);

不要忘记#include <iterator>

09-03 22:06