Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
friend constexpr bool operator == ( const /*iterator*/ & x, const /*iterator*/ & y )

requires ( std:: equality_comparable <

ranges:: iterator_t < /*maybe-const*/ < Const, Views >>> && ... ) ;
(1) (C++23以降)
friend constexpr auto operator <=> ( const /*iterator*/ & x, const /*iterator*/ & y )
requires ranges:: random_access_range < Base > ;
(2) (C++23以降)

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

current_ を、適応されたビューの要素へのイテレータを保持する基盤となる tuple-like オブジェクトとします。

1) 戻り値:
  • x. current_ == y. current_ /*all-bidirectional*/ < Const, Views... > がtrueの場合。
  • それ以外の場合、 true は整数 0 <= i < sizeof... ( Views ) が存在し、かつ bool ( std :: get < i > ( x. current_ ) == std :: get < i > ( y. current_ ) ) がtrueの場合。
  • それ以外の場合、 false
2) 次と同等: return x. current_ <=> y. current_ ;

この関数は通常の unqualified lookup または qualified lookup では可視化されず、 argument-dependent lookup によってのみ発見可能です。これは std::ranges::zip_view:: iterator <Const> が引数の関連クラスである場合に限ります。

< <= > >= != 演算子は、 それぞれ operator <=> および operator == から合成されます。

パラメータ

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

戻り値

比較の結果

関連項目

(C++23)
zip_view::begin から返されたイテレータとセンチネルを比較する
(関数)