Scroll to navigation

std::experimental::ranges::next(3) C++ Standard Libary std::experimental::ranges::next(3)

NAME

std::experimental::ranges::next - std::experimental::ranges::next

Synopsis


Defined in header <experimental/ranges/iterator>
namespace {
(ranges TS)
constexpr /* unspecified */ next = /* unspecified */; (customization point
object)
}
Call signature
template< Iterator I > (1)
constexpr I next( I i );
template< Iterator I > (2)
constexpr I next( I i, ranges::difference_type_t<I> n );
template< Iterator I, Sentinel<I> S > (3)
constexpr I next( I i, S bound );
template< Iterator I, Sentinel<I> S >
constexpr I next( I i, ranges::difference_type_t<I> n, S (4)
bound );


Advances the iterator i n times, or until bound is reached, whichever comes first,
and returns the advanced iterator.


1) Equivalent to ++i; return i;.
2) Equivalent to ranges::advance(i, n); return i;.
3) Equivalent to ranges::advance(i, bound); return i;.
4) Equivalent to ranges::advance(i, n, bound); return i;.

Return value


The advanced iterator.

Notes


Even though omitting n for overload (2) behaves as if n is 1, omitting n for
overload (4) effectively behaves as if n is infinity (always advance to bound).

Example


This section is incomplete
Reason: no example

See also


next increment an iterator
(C++11) (function template)
advance advances an iterator by given distance
(function template)
prev decrement an iterator
(function template)
returns the distance between an iterator and a sentinel, or between the
distance beginning and the end of a range
(function template)

Category:


* Todo no example

2024.06.10 http://cppreference.com