Namespaces
Variants

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

来自 zh.cppreference.net
 
 
范围库
范围适配器
 
 
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_ 为指向被适配视图元素的底层迭代器的 类元组对象。

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_;。

此函数对普通无限定或有限定查找不可见,只能通过实参依赖查找在 std::ranges::zip_view::iterator<Const> 为参数的关联类时找到。

运算符 <、<=、>、>= 和 != 分别通过 从 和 operator<=> 合成operator==得到。

参数

x, y - 待比较的迭代器

返回值

比较结果

参见

(C++23)
比较哨位与从 zip_view::begin 返回的迭代器
(函数)