operator==,<=>(ranges::cartesian_product_view::iterator)
來自 cppreference.com
< cpp | ranges | cartesian product view | iterator
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 起) |
比較兩個迭代器,或一個迭代器和一個哨位。
令 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_;
這些函式對通常的無限定或限定查詢不可見,只能在 std::ranges::cartesian_product_view::iterator<Const>
是引數的關聯類時透過實參依賴查詢找到。
!=
運算子由 operator==
合成。
目錄 |
[編輯] 引數
x, y | - | 要比較的迭代器或哨位 |
[編輯] 返回值
比較結果。
[編輯] 示例
本節不完整 原因:無示例 |
[編輯] 參閱
(C++23) |
將哨位與 cartesian_product_view::begin 所返回的迭代器進行比較 (函式) |