命名空间
变体
操作

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

来自 cppreference.cn
 
 
范围库 (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 起)

比较两个迭代器,或一个迭代器和一个哨位。

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 - 要比较的迭代器或哨位

[编辑] 返回值

比较结果。

[编辑] 示例

[编辑] 参阅

将哨位与 cartesian_product_view::begin 所返回的迭代器进行比较
(函数) [编辑]