# std::ranges::elements_view<V,N>::end

< cpp‎ | ranges‎ | elements view

constexpr auto end() requires (!__SimpleView<V> && !ranges::common_range<V>); | (1) | (C++20 起)
constexpr auto end() requires (!__SimpleView<V> && ranges::common_range<V>); | (2) | (C++20 起)
constexpr auto end() const requires ranges::range<const V>; | (3) | (C++20 起)
constexpr auto end() const requires ranges::common_range<const V>; | (4) | (C++20 起)

返回表示 `elements_view` 末尾的哨位或迭代器。

令 `base_` 为底层视图：

1) 等价于 return /*sentinel*/<false>{ranges::end(base_)}; 。
2) 等价于 return /*iterator*/<false>{ranges::end(base_)}; 。
3) 等价于 return /*sentinel*/<true>{ranges::end(base_)}; 。
4) 等价于 return /*iterator*/<true>{ranges::end(base_)}; 。

### 参数

（无）

### 返回值

1,3) 比较等于尾迭代器的哨位。
2,4) 指向末元素后一位置的迭代器。

### 注解

`end()` 当且仅当底层视图为 `common_range` 时返回迭代器： elements_view<V,F> 凡在 `V` 实现 `common_range` 时实现该概念。

### 示例

| 本节未完成 原因：暂无示例

### 参阅

begin (C++20) | 返回指向起始的迭代器 (公开成员函数)
ranges::end (C++20) | 返回指示范围结尾的哨位 (定制点对象)