operator==,<,>,<=,>=,<=>(ranges::stride_view::iterator)
friend constexpr bool operator==( const /*iterator*/& x, std::default_sentinel_t ); | (1) | (начиная с C++23) |
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y )
requires std::equality_comparable<ranges::iterator_t<Base>>;
| (2) | (начиная с C++23) |
friend constexpr bool operator<( const /*iterator*/& x, const /*iterator*/& y )
requires ranges::random_access_range<Base>;
| (3) | (начиная с C++23) |
friend constexpr bool operator>( const /*iterator*/& x, const /*iterator*/& y )
requires ranges::random_access_range<Base>;
| (4) | (начиная с C++23) |
friend constexpr bool operator<=( const /*iterator*/& x, const /*iterator*/& y )
requires ranges::random_access_range<Base>;
| (5) | (начиная с C++23) |
friend constexpr bool operator>=( const /*iterator*/& x, const /*iterator*/& y )
requires ranges::random_access_range<Base>;
| (6) | (начиная с C++23) |
friend constexpr auto operator<=>( const /*iterator*/& x, const /*iterator*/& y )
requires ranges::random_access_range<Base> and
std::three_way_comparable<ranges::iterator_t<Base>>;
| (7) | (начиная с C++23) |
Сравнивает базовые итераторы/сентинелы.
Пусть current_ — базовый итератор, а end_ — базовый сентинел.
1) Эквивалентно
return x.current_ == x.end_;.
2) Эквивалентно
return x.current_ == y.current_;.
3) Эквивалентно
return x.current_ < y.current_;.
4) Эквивалентно
return y < x;
5) Эквивалентно
return !(y < x);
6) Эквивалентно
return !(x < y);
7) Эквивалентно
return x.current_ <=> y.current_;.Эти функции не видны при обычном неквалифицированном поиске или квалифицированном поиске и могут быть найдены только с помощью поиска, зависящего от аргументов, если std::ranges::stride_view::iterator<Const> является ассоциированным классом аргументов.
Оператор != синтезируется из operator==.
Параметры
| x, y | - | сравниваемые итераторы |
Возвращаемое значение
результат сравнения
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/ranges/stride_view/iterator/operator_cmp