Spec-Zone.ru › C++

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_ — базовый кортеж-подобный объект итераторов к элементам адаптированных представлений.

1) Возвращает:
  • 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 - итераторы для сравнения

Значение результата

Результат сравнения

См. также

operator==
(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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API