Namensräume
Varianten
Aktionen

operator==,<=>(ranges::zip_view::iterator)

Von cppreference.com
< cpp‎ | ranges‎ | zip view‎ | iterator
 
 
Bereichsbibliothek
Range-Adaptoren
 
 
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y )

    erfordert (std::equality_comparable<

ranges::iterator_t</*vielleicht-const*/<Const, Views>>> && ...);
(1) (seit C++23)
friend constexpr auto operator<=>( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base>;
(2) (seit C++23)

Vergleicht die zugrundeliegenden Iteratoren.

Sei current_ das zugrunde liegende *tuple-ähnliche* Objekt von Iteratoren zu Elementen adaptierter Views.

1) Gibt zurück
  • x.current_ == y.current_ wenn /*alle-bidirektional*/<Const, Views...> wahr ist.
  • Andernfalls, true wenn es eine ganze Zahl 0 <= i < sizeof...(Views) gibt, so dass bool(std::get<i>(x.current_) == std::get<i>(y.current_)) wahr ist.
  • Andernfalls, false.
2) Äquivalent zu return x.current_ <=> y.current_;.

Diese Funktion ist für gewöhnliche unqualifizierte oder qualifizierte Suche nicht sichtbar und kann nur durch argumentabhängige Suche gefunden werden, wenn std::ranges::zip_view::iterator<Const> eine zugehörige Klasse der Argumente ist.

Die Operatoren <, <=, >, >= und != sind synthetisiert aus operator<=> und operator== beziehungsweise.

[bearbeiten] Parameter

x, y - zu vergleichende Iteratoren

[bearbeiten] Rückgabewert

Das Ergebnis des Vergleichs

[bearbeiten] Siehe auch

vergleicht ein Sentinel mit einem von zip_view::begin zurückgegebenen Iterator
(Funktion) [bearbeiten]