Namespaces
Variants

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

Depuis fr.cppreference.net
 
 
Bibliothèque de plages
Adaptateurs de plage
 
 
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 iterator arithmétique 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 une recherche ordinaire unqualified ou qualified lookup, et ne peuvent être trouvées que par une argument-dependent lookup lorsque enumerate_view::iterator<Const> est une classe associée aux arguments.

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)