std::advance的替代品,它不会修改输入

alternative to std::advance which doesn't modify the input

本文关键字:输入 修改 advance 替代品 std      更新时间:2023-10-16

找不到它,希望有人可以帮忙。std 库中有一个函数,它被调用迭代器和一个无符号数字,它返回指向输入迭代器将指向对象的迭代器,如果 advance 被调用到它上面。我指的是哪个功能?我确定它存在!

在 C++11 中,有 std::next(在 <iterator> 中定义)。在此之前,boost也有同样的东西,或者你可以自己写。

我确定输入迭代器没有这样的函数。如果修改(递增)输入迭代器,则会使其其他副本失效。因此,此函数只能用于前向迭代器。

看看 std::next 函数
http://en.cppreference.com/w/cpp/iterator/next