命名空间
变体
操作

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

来自 cppreference.com
 
 
范围库
范围适配器
 
 
constexpr auto end() requires (!/*simple-view*/<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 起)

返回一个 哨兵,表示视图的末尾。

base_ 表示底层视图。

1) 有效地返回 /*sentinel*/<false>(ranges::end(base_), std::addressof(pred())).
2) 有效地返回 /*sentinel*/<true>(ranges::end(base_), std::addressof(pred())).

如果 V 是一个 简单视图(也就是说,如果 Vconst V 是具有相同迭代器和哨兵类型的视图),则重载 (1) 不参与重载解析。

内容

[编辑] 参数

(无)

[编辑] 返回值

一个 哨兵,表示视图的末尾。

[编辑] 示例

[编辑] 缺陷报告

以下行为更改缺陷报告已追溯应用于先前发布的 C++ 标准。

DR 应用于 已发布的行为 正确行为
LWG 3450 C++20 const 重载可能会返回一个不可与迭代器比较的哨兵 受约束的

[编辑] 另请参阅

返回指向开头的迭代器
(公共成员函数) [编辑]
比较哨兵与 take_while_view::begin 返回的迭代器
(函数) [编辑]