Namespaces
Variants

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

Von de.cppreference.net
 
 
Ranges-Bibliothek
Range-Adaptoren
 
 
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 )
    requires std::sized_sentinel_for<ranges::iterator_t<Base>,
                                     ranges::iterator_t<Base>>;
(4) (seit C++23)

Sei current_ das zugrunde liegende Array von Iteratoren und Base der Typ (möglicherweise const-qualifiziert) der zugrunde liegenden View.

1,2) Gibt den Iterator i zurück, der um n erhöht wurde. Äquivalent zu: auto r = i; r += n; return r;.
3) Gibt den Iterator i zurück, der um n verringert wurde. Äquivalent zu: auto r = i; r -= n; return r;.
4) Gibt die Distanz zwischen i und j zurück. Äquivalent zu: return i.current_.back() - j.current_.back();.

Diese Funktionen sind für die gewöhnliche unqualifizierte oder qualifizierte Namenssuche nicht sichtbar und können nur durch argumentabhängige Namenssuche gefunden werden, wenn adjacent_view::iterator<Const> eine assoziierte Klasse der Argumente ist.

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

Siehe auch

erhöht oder verringert die zugrundeliegenden Iteratoren
(öffentliche Elementfunktion)