operator==,<=>(ranges::zip_view::iterator)
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y )
requires (std::equality_comparable<
ranges::iterator_t</*maybe-const*/<Const, Views>>> && ...);
| (1) | (since C++23) |
friend constexpr auto operator<=>( const /*iterator*/& x, const /*iterator*/& y ) requires ranges::random_access_range<Base>; | (2) | (since C++23) |
Сравнивает базовые итераторы.
Пусть current_ — базовый кортеж-подобный объект итераторов к элементам адаптированных представлений.
-
x.current_ == y.current_если/*all-bidirectional*/<Const, Views...>истинно. - В противном случае,
trueесли существует целое число0 <= i < sizeof...(Views)такое, чтоbool(std::get<i>(x.current_) == std::get<i>(y.current_))истинно. - В противном случае,
false.
2) Эквивалентно
return x.current_ <=> y.current_;.Эти функции не видны для обычного неквалифицированного или квалифицированного поиска и могут быть найдены только с помощью поиска с учётом аргументов, когда std::ranges::zip_view::iterator<Const> является ассоциированным классом аргументов.
Операторы <, <=, >, >=, и != синтезируются соответственно из операторов <=> и ==.
Параметры
| x, y | - | итераторы для сравнения |
Значение результата
Результат сравнения
См. также
|
(C++23) | сравнивает конечную точку с итератором, возвращаемым из zip_view::begin (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/zip_view/iterator/operator_cmp