Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
friend constexpr /*iterator*/ operator + ( const /*iterator*/ & i,

difference_type n )

requires /*cartesian-product-is-random-access*/ < Const, First, Vs... > ;
(1) (desde C++23)
friend constexpr /*iterator*/ operator + ( difference_type n,

const /*iterator*/ & i )

requires /*cartesian-product-is-random-access*/ < Const, First, Vs... > ;
(2) (desde C++23)
friend constexpr /*iterator*/ operator - ( const /*iterator*/ & i,

difference_type n )

requires /*cartesian-product-is-random-access*/ < Const, First, Vs... > ;
(3) (desde C++23)
friend constexpr difference_type operator - ( const /*iterator*/ & i,

const /*iterator*/ & j )
requires

/*cartesian-is-sized-sentinel*/ < Const, iterator_t, First, Vs... > ;
(4) (desde C++23)
friend constexpr difference_type operator - ( const /*iterator*/ & i,

std:: default_sentinel_t )
requires

/*cartesian-is-sized-sentinel*/ < Const, ranges:: sentinel_t , First, Vs... > ;
(5) (desde C++23)
friend constexpr difference_type operator - ( std:: default_sentinel_t s,

const /*iterator*/ & i )
requires

/*cartesian-is-sized-sentinel*/ < Const, ranges:: sentinel_t , First, Vs... > ;
(6) (desde C++23)

Realiza iterator aritmética o calcula la distancia.

Sea current_ la tupla subyacente de iteradores y parent_ el puntero subyacente a cartesian_product_view .

1) Equivalente a: return /*iterator*/ ( i ) + = n ; .
2) Equivalente a: return i + n ; .
3) Equivalente a: return /*iterator*/ ( i ) - = n ; .
4) Equivalente a: return i. distance_from ( j. current_ ) ; .
5) Sea /*end-tuple*/ un objeto de un tipo que es una especialización de tuple , tal que:
  • std :: get < 0 > ( /*end-tuple*/ ) tenga el mismo valor que ranges:: end ( std :: get < 0 > ( i. parent_ - > bases_ ) ) ;
  • std :: get < N > ( /*end-tuple*/ ) tenga el mismo valor que ranges:: begin ( std :: get < N > ( i. parent_ - > bases_ ) ) para cada entero 1 ≤ N ≤ sizeof... ( Vs ) .
Equivalente a: return i. distance_from ( /*end-tuple*/ ) ; .
6) Equivalente a: return - ( i - s ) ; .

Estas funciones no son visibles para la búsqueda no calificada o calificada ordinaria, y solo pueden ser encontradas mediante búsqueda dependiente de argumentos cuando cartesian_product_view:: iterator <Const> es una clase asociada de los argumentos.

Contenidos

Parámetros

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

Valor de retorno

1,2) Un iterador incrementado.
3) Un iterador decrementado.
4) Una distancia entre los iteradores dados.
5,6) Una distancia entre el iterador dado y el centinela.

Ejemplo

Véase también

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