Namespaces
Variants

operator+,- (ranges::enumerate_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr /* iterator */

operator + ( const /* iterator */ & i, difference_type n )

requires ranges:: random_access_range < /* Base */ > ;
(1) (desde C++23)
friend constexpr /* iterator */

operator + ( difference_type n, const /* iterator */ & i )

requires ranges:: random_access_range < /* Base */ > ;
(2) (desde C++23)
friend constexpr /* iterator */

operator - ( const /* iterator */ & i, difference_type n )

requires ranges:: random_access_range < /* Base */ > ;
(3) (desde C++23)
friend constexpr difference_type
operator - ( const /* iterator */ & i, const /* iterator */ & j ) noexcept ;
(4) (desde C++23)

Realiza iterator aritmética o calcula la distancia.

pos_ es el índice subyacente, y Base es el tipo (posiblemente calificado como const) de la vista subyacente.

Equivalente a:

1) auto temp = i ; temp + = n ; return temp ;
2) return i + n ;
3) auto temp = i ; temp - = n ; return temp ;
4) return i. pos_ - j. pos_ ;

Estas funciones no son visibles para la búsqueda unqualified o qualified ordinaria, y solo pueden ser encontradas mediante argument-dependent lookup cuando enumerate_view:: iterator <Const> es una clase asociada de los argumentos.

Contenidos

Parámetros

i, j - los iteradores
n - posición relativa a la ubicación actual

Valor de retorno

1,2) Un iterador incrementado.
3) Un iterador decrementado.
4) Una distancia entre los iteradores dados.

Ejemplo

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 3912 C++23 la sobrecarga (4) no era noexcept es noexcept

Véase también

avanza o decrementa el iterador subyacente
(función miembro pública)