std::ranges::enumerate_view<V>::end
来自 zh.cppreference.net
constexpr auto end() requires (!__simple_view<V>);
|
(1) | (C++23 起) |
constexpr auto end() const requires /*range-with-movable-references*/<const V>;
|
(2) | (C++23 起) |
返回一个迭代器或一个哨位,它与视图的末尾迭代器比较相等。
enumerate_view.
令base_表示底层视图。
1)等价于:
if constexpr (ranges::forward_range<V> and
ranges::common_range<V> and
ranges::sized_range<V>)
return /*iterator*/<false>(ranges::end(base_), ranges::distance(base_));
else
return /*sentinel*/<false>(ranges::end(base_));
2)等价于:
if constexpr (ranges::forward_range<const V> and
ranges::common_range<const V> and
ranges::sized_range<const V>)
return /*iterator*/<true>(ranges::end(base_), ranges::distance(base_));
else
return /*sentinel*/<true>(ranges::end(base_));
参数
(无)
返回值
一个表示
enumerate_view
末尾的
迭代器
或
哨位
,如上所述。
示例
|
本节内容不完整
原因:缺少示例 |
缺陷报告
下列行为变更缺陷报告被追溯应用于先前发布的C++标准。
| 缺陷报告 | 应用于 | 发布时的行为 | 正确行为 |
|---|---|---|---|
| LWG 3919 | C++23 |
ranges::distance
对于具有大小但非前向的底层范围可能引发未定义行为
|
对此类范围返回哨兵类型 |
参见
|
返回指向起始位置的迭代器
(公开成员函数) |
|
|
(C++20)
|
返回指示范围结束的哨兵
(定制点对象) |