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

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

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

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

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

Effectue des opérations arithmétiques sur les itérateurs ou calcule la distance.

pos_ est l'indice sous-jacent, et Base est le type (éventuellement qualifié const) de la vue sous-jacente.

Équivalent à :

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

Ces fonctions ne sont pas visibles par la recherche non qualifiée ou qualifiée ordinaire, et ne peuvent être trouvées que par la recherche dépendante des arguments lorsque enumerate_view:: iterator <Const> est une classe associée des arguments.

Table des matières

Paramètres

i, j - les itérateurs
n - position relative à l'emplacement actuel

Valeur de retour

1,2) Un itérateur incrémenté.
3) Un itérateur décrémenté.
4) Une distance entre les itérateurs donnés.

Exemple

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement publié Comportement correct
LWG 3912 C++23 la surcharge (4) n'était pas noexcept elle est noexcept

Voir aussi

avance ou décrémente l'itérateur sous-jacent
(fonction membre publique)