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) (seit C++23)
friend constexpr /*iterator*/ operator + ( difference_type n,

const /*iterator*/ & i )

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

difference_type n )

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

const /*iterator*/ & j )
requires

/*cartesian-is-sized-sentinel*/ < Const, iterator_t, First, Vs... > ;
(4) (seit 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) (seit 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) (seit C++23)

Führt Iterator -Arithmetik aus oder berechnet die Distanz.

Sei current_ das zugrundeliegende Tupel von Iteratoren und parent_ der zugrundeliegende Zeiger auf cartesian_product_view .

1) Entspricht: return /*iterator*/ ( i ) + = n ; .
2) Entspricht: return i + n ; .
3) Entspricht: return /*iterator*/ ( i ) - = n ; .
4) Entspricht: return i. distance_from ( j. current_ ) ; .
5) Sei /*end-tuple*/ ein Objekt eines Typs, der eine Spezialisierung von tuple ist, so dass:
  • std :: get < 0 > ( /*end-tuple*/ ) denselben Wert hat wie ranges:: end ( std :: get < 0 > ( i. parent_ - > bases_ ) ) ;
  • std :: get < N > ( /*end-tuple*/ ) denselben Wert hat wie ranges:: begin ( std :: get < N > ( i. parent_ - > bases_ ) ) für jede ganze Zahl 1 ≤ N ≤ sizeof... ( Vs ) .
Entspricht: return i. distance_from ( /*end-tuple*/ ) ; .
6) Entspricht: return - ( i - s ) ; .

Diese Funktionen sind für gewöhnliches unqualified oder qualified lookup nicht sichtbar und können nur durch argument-dependent lookup gefunden werden, wenn cartesian_product_view:: iterator <Const> eine assoziierte Klasse der Argumente ist.

Inhaltsverzeichnis

Parameter

i, j - die Iteratoren
n - die Position relativ zum aktuellen Standort
s - der Sentinel

Rückgabewert

1,2) Ein inkrementierter Iterator.
3) Ein dekrementierter Iterator.
4) Ein Abstand zwischen gegebenen Iteratoren.
5,6) Ein Abstand zwischen gegebenem Iterator und Sentinel.

Beispiel

Siehe auch

erhöht oder verringert den zugrundeliegenden Iterator
(öffentliche Elementfunktion)