std::next
template < class ForwardIt>
ForwardIt next(ForwardIt it, typename std::iterator_traits<ForwardIt>::difference_type = 1);
template<class InputId>
constexpr InputId next(InputIt it,
typename std::iterator_traits<InputIt>::difference_type n = 1);
template<class ForwardIt>
ForwardIt next(ForwardIt it,
typename std::iter_traits<ForwardIt>::difference_type n = 1)
{
std::advance(it , n);
return it;
}
- 作用:返回迭代器it的第n个后继元素,默认n为1。
- 例子:
#include <iostream>
#include <iterator>
#include <vector>
int main()
{
std::vector<int> v{1,2,3};
auto nx = std::next(v.begin());
std::cout << *nx << std::endl;
return 0;
}