命名空间
变体
操作

operator==(ranges::take_while_view::sentinel)

来自 cppreference.com
 
 
范围库
范围适配器
 
 
friend constexpr bool operator==( const ranges::iterator_t<Base>& x,
                                  const /*sentinel*/& y );
(自 C++20 起)

take_while_view::/*sentinel*/ 与指向 (可能具有 const 限定符) 视图 V 的迭代器进行比较。迭代器通常从对 take_while_view::begin 的调用中获得。

如果 xy 的底层哨兵 (即 y.base()) 相比较相等,或者如果当应用于 *x 时谓词返回 false,则返回 true

此函数对普通 无限定限定查找 不可見,并且只能通过 依赖于参数的查找take_while_view::sentinel<Const> 是参数的关联类时才能找到。

!= 运算符是 operator== 合成的

[编辑] 参数

x - 要比较的迭代器
y - 要比较的哨兵

[编辑] 返回值

y.end_ == x || !std::invoke(*y.pred_, *x),其中 end_ 表示存储的哨兵,pred_ 表示存储的指向谓词的指针。

[编辑] 示例