Namespaces
Variants

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

ja.cppreference.net より
 
 
Ranges ライブラリ
範囲アダプタ
 
 
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y );
(1) (C++23 から)
friend constexpr bool operator<( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<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 auto operator<=>( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base> &&
             std::three_way_comparable<ranges::iterator_t<Base>>;
(6) (C++23 から)

内部のイテレータを比較します。current_ を内部のイテレータの配列とします。

1) return x.current_.back() == y.current_.back() と同等です。
2) return x.current_.back() < y.current_.back() と同等です。
3) return y < x; と同等です。
4) return !(y < x); と同等です。
5) return !(x < y); と同等です。
6) return x.base() <=> y.base(); と同等です。

これらの関数は、通常の 非修飾 または 修飾名前探索 では可視ではなく、引数依存の名前探索 によってのみ、引数の関連クラスとして std::ranges::adjacent_view::iterator<Const> がある場合に発見できます。

!= 演算子は 合成 され、operator== から生成されます。

パラメータ

x, y - 比較するイテレータ

戻り値

比較結果。

関連項目

(C++23)
sentinelと adjacent_view::begin から返されるイテレータを比較する
(関数)