operator==,<=>(ranges::zip_view::iterator)
Von de.cppreference.net
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y )
requires (std::equality_comparable<
ranges::iterator_t</*maybe-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 zugrunde liegenden Iteratoren.
Sei current_ das zugrunde liegende tupelartige Objekt von Iteratoren zu Elementen der adaptierten Ansichten.
1) Gibt zurück:
x.current_ == y.current_wenn/*all-bidirectional*/<Const, Views...>wahr ist.- Andernfalls
true, falls eine ganze Zahl0 <= i < sizeof...(Views)existiert, sodassbool(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 die gewöhnliche unqualifizierte oder qualifizierte Namenssuche nicht sichtbar und kann nur durch argumentabhängige Namenssuche gefunden werden, wenn std::ranges::zip_view::iterator<Const> eine assoziierte Klasse der Argumente ist.
Die Operatoren <, <=, >, >= und != werden aus synthetisiert von operator<=> bzw. operator==.
Parameter
| x, y | - | zu vergleichende Iteratoren |
Rückgabewert
Das Ergebnis des Vergleichs
Siehe auch
|
(C++23)
|
vergleicht einen Sentinel mit einem von
zip_view::begin
zurückgegebenen Iterator
(Funktion) |