Namespaces
Variants

operator-(ranges::adjacent_view::sentinel)

Von de.cppreference.net
 
 
Bereiche-Bibliothek
Bereichsadapter
 
 
template< bool OtherConst >
    requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                     ranges::iterator_t</*maybe-const*/<OtherConst, V>>>
friend constexpr ranges::range_difference_t</*maybe-const*/<OtherConst, V>>
    operator-( const /*iterator*/<OtherConst>& x, const /*sentinel*/& y );
(1) (seit C++23)
template< bool OtherConst >
    requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                     ranges::iterator_t</*maybe-const*/<OtherConst, V>>>
friend constexpr ranges::range_difference_t</*maybe-const*/<OtherConst, V>>
    operator-( const /*sentinel*/& y, const /*iterator*/<OtherConst>& x );
(2) (seit C++23)

Berechnet die Distanz zwischen dem zugrunde liegenden Iterator von x und dem zugrunde liegenden Sentinel von y.

Sei current_ das zugrunde liegende Array von Iteratoren in x und end_ der zugrunde liegende Sentinel in y.

1) Äquivalent zu: return x.current_.back() - y.end_;
2) Äquivalent zu: return y.end_ - x.current_.back();

Diese Funktions schablonen sind für gewöhnliche unqualifizierte oder qualifizierte Suche nicht sichtbar und können nur durch argumentabhängige Suche gefunden werden, wenn adjacent_view::sentinel eine assoziierte Klasse der Argumente ist.

Parameter

x - ein iterator
y - ein sentinel

Rückgabewert

Der Abstand zwischen x und y .

Beispiel

Siehe auch