operator==, <=>(ranges::zip_view::iterator)
From cppreference.com
| friend constexpr bool operator==( const /*iterator*/& x, const /*iterator*/& y ) requires (std::equality_comparable< |
(1) | (C++23から) |
| friend constexpr auto operator<=>( const /*iterator*/& x, const /*iterator*/& y ) requires ranges::random_access_range<Base>; |
(2) | (C++23から) |
基になるイテレータを比較します。
current_を、アダプトされたビューの要素へのイテレータの基底となるタプルライクなオブジェクトとします。
1) 返り値
- x.current_ == y.current_。ただし、/*all-bidirectional*/<Const, Views...> が真の場合。
- それ以外の場合、true。ただし、0 <= i < sizeof...(Views) となる整数 `i` が存在し、bool(std::get<i>(x.current_) == std::get<i>(y.current_)) が真となる場合。
- それ以外の場合、false。
2) return x.current_ <=> y.current_; と同等。
この関数は、通常の非修飾または修飾ルックアップからは見えず、std::ranges::zip_view::iterator<Const> が引数に関連付けられたクラスである場合にのみ、引数依存名探索によって見つけることができます。
<, <=, >, >=, != 演算子は、それぞれ operator<=> と operator== から合成されます。
[編集] パラメータ
| x, y | - | 比較するイテレータ |
[編集] 返り値
比較結果
[編集] 関連項目
| (C++23) |
センチネルとzip_view::beginから返されるイテレータを比較します。 (関数) |