Namespaces
Variants

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

De es.cppreference.net
 
 
Biblioteca de rangos
Adaptadores de rangos
 
 
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 de iteradores 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 ordinaria no calificada o calificada, y solo se pueden encontrar mediante la búsqueda dependiente de argumentos cuando enumerate_view::iterator<Const> es una clase asociada de los argumentos.

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)