Namespaces
Variants

operator==,<=> (ranges::cartesian_product_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, First >>> ;
(1) (C++23以降)
friend constexpr bool operator == ( const /*iterator*/ & x, std:: default_sentinel_t ) ;
(2) (C++23以降)
friend constexpr auto operator <=> ( const /*iterator*/ & x, const /*iterator*/ & y )
requires /*all-random-access*/ < Const, First, Vs... > ;
(2) (C++23以降)

2つの イテレータ またはイテレータとセンチネルを比較します。

current_ を基となるイテレータのタプルとします。

1) 次と同等: return x. current_ == y. current_ ;
2) いずれかの整数 0 ≤ i ≤ sizeof... ( Vs ) に対して std :: get < i > ( x. current_ ) == ranges:: end ( std :: get < i > ( x. parent_ - > bases_ ) ) true の場合、 true を返す。それ以外の場合、 false を返す。
3) 同等: return x. current_ <=> y. current_ ;

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

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

目次

パラメータ

x, y - 比較するイテレータまたはセンチネル

戻り値

比較の結果。

関連項目

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