std::experimental::ranges:: next
|
Definido en el encabezado
<experimental/ranges/iterator>
|
||
|
namespace
{
constexpr
/* no especificado */
next
=
/* no especificado */
;
|
(ranges TS)
(objeto de punto de personalización) |
|
|
Firma de llamada
|
||
|
template
<
Iterator I
>
constexpr I next ( I i ) ; |
(1) | |
|
template
<
Iterator I
>
constexpr I next ( I i, ranges :: difference_type_t < I > n ) ; |
(2) | |
|
template
<
Iterator I, Sentinel
<
I
>
S
>
constexpr I next ( I i, S bound ) ; |
(3) | |
|
template
<
Iterator I, Sentinel
<
I
>
S
>
constexpr I next ( I i, ranges :: difference_type_t < I > n, S bound ) ; |
(4) | |
Avanza el iterador i n veces, o hasta que se alcance bound , lo que ocurra primero, y devuelve el iterador avanzado.
Contenidos |
Objetos de punto de personalización
El nombre
ranges::next
denota un
objeto de punto de personalización
, que es un
objeto función
de un tipo de clase
literal
Semiregular
(denotado, con fines expositivos, como
NextT
). Todas las instancias de
NextT
son iguales. Por lo tanto,
ranges::next
puede copiarse libremente y sus copias pueden usarse indistintamente.
Dado un conjunto de tipos
Args...
, si
std::
declval
<
Args
>
(
)
...
cumplen los requisitos para argumentos de
ranges::next
anteriores,
NextT
satisfará
ranges
::
Invocable
<
const
NextT, Args...
>
. De lo contrario, ningún operador de llamada a función de
NextT
participa en la resolución de sobrecarga.
En cada unidad de traducción en la que
ranges::next
está definido, se refiere a la misma instancia del objeto de punto de personalización. (Esto significa que puede usarse libremente en elementos como funciones inline y plantillas de función sin violar la
one-definition rule
.)
Valor de retorno
El iterador avanzado.
Notas
Aunque omitir n para la sobrecarga (2) se comporta como si n fuera 1, omitir n para la sobrecarga (4) efectivamente se comporta como si n fuera infinito (siempre avanza hasta bound ).
Ejemplo
|
Esta sección está incompleta
Razón: sin ejemplo |
Véase también
|
(C++11)
|
incrementa un iterador
(plantilla de función) |
|
avanza un iterador una distancia dada
(plantilla de función) |
|
|
decrementa un iterador
(plantilla de función) |
|
|
devuelve la distancia entre un iterador y un centinela, o entre el inicio y el final de un rango
(plantilla de función) |