std::ranges::take_while_view<V,Pred>::end

来自cppreference.com
 
 
 
 
constexpr auto end() requires (!__SimpleView<V>);
(1) (C++20 起)
constexpr auto end() const requires

    ranges::range<const V> &&

    std::indirect_unary_predicate<const Pred, ranges::iterator_t<const V>>;
(2) (C++20 起)

返回表示视图末尾的哨位

1) 等效于返回 /*sentinel*/<false>(ranges::end(base_), std::addressof(pred())) ,其中 base_ 代表底层视图。
2) 等效于返回 /*sentinel*/<true>(ranges::end(base_), std::addressof(pred())) ,其中 base_ 代表底层视图。

V简单视图(即 Vconst V 是拥有相同迭代器与哨位类型的视图)则重载 (1) 不参与重载决议。

参数

(无)

返回值

表示视图末尾的哨位

示例

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

DR 应用于 出版时的行为 正确行为
LWG 3450 C++20 const 重载可能返回不可与迭代器比较的哨位 已约束

参阅

(C++20)
返回指向起始的迭代器
(公开成员函数)
比较哨位与从 take_while_view::begin 返回的迭代器
(函数)