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

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

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

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

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

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

pos_ ist der zugrundeliegende Index, und Base ist der (möglicherweise const-qualifizierte) Typ der zugrundeliegenden Ansicht.

Entspricht:

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_ ;

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

Inhaltsverzeichnis

Parameter

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

Rückgabewert

1,2) Ein inkrementierter Iterator.
3) Ein dekrementierter Iterator.
4) Ein Abstand zwischen gegebenen Iteratoren.

Beispiel

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 3912 C++23 Überladung (4) war nicht noexcept sie ist noexcept

Siehe auch

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