名前空間
変種
操作

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

From cppreference.com
< cpp‎ | ranges‎ | elements view‎ | iterator
 
 
Rangesライブラリ
Rangeアダプタ
 
 
friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y )
    requires std::equality_comparable<ranges::iterator_t<Base>>;
(1) (C++20以降)
friend constexpr bool operator<( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base>;
(2) (C++20以降)
friend constexpr bool operator>( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base>;
(3) (C++20以降)
friend constexpr bool operator<=( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base>;
(4) (C++20以降)
friend constexpr bool operator>=( const /*iterator*/& x, const /*iterator*/& y )
    requires ranges::random_access_range<Base>;
(5) (C++20以降)
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++20以降)

基になるイテレータを比較します。

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

これらの関数は、通常の 非修飾または 修飾ルックアップからは見えず、std::ranges::elements_view::iterator<Const> が引数に関連付けられたクラスである場合にのみ、引数依存名前探索によって見つけることができます。

!= 演算子は operator== から合成される。

[編集] パラメータ

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

[編集] 戻り値

比較結果。

[編集] 関連項目

elements_view::begin によって返されるイテレータとセンチネルを比較します。
(関数) [編集]
English 日本語 中文(简体) 中文(繁體)