Namespaces
Variants

std::ranges::join_view<V>::end

出自 zh.cppreference.net
 
 
范围库
范围适配器
 
 
constexpr auto end();
(1) (C++20 起)
constexpr auto end() const
    requires ranges::input_range<const V> &&
             std::is_reference_v<ranges::range_reference_t<const V>>;
(2) (C++20 起)

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

令 base_ 为底层视图:

1) 等价于
if constexpr (ranges::forward_range<V> &&
              std::is_reference_v<ranges::range_reference_t<V>> &&
              ranges::forward_range<ranges::range_reference_t<V>> &&
              ranges::common_range<V> &&
              ranges::common_range<ranges::range_reference_t<V>>)
    return /*iterator*/</*simple-view*/<V>>{*this, ranges::end(base_)};
else
    return /*sentinel*/</*simple-view*/<V>>{*this};
2) 等价于
if constexpr (ranges::forward_range<const V> &&
              std::is_reference_v<ranges::range_reference_t<const V>> &&
              ranges::forward_range<ranges::range_reference_t<const V>> &&
              ranges::common_range<const V> &&
              ranges::common_range<ranges::range_reference_t<const V>>)
    return /*iterator*/<true>{*this, ranges::end(base_)};
else
    return /*sentinel*/<true>{*this};

参数

(无)

返回值

1) 哨兵,与结束迭代器比较相等。
2) 指向最后一个元素之后元素的迭代器。

示例

参见

返回指向起始位置的迭代器
(公开成员函数)
返回指示范围结束的哨兵
(定制点对象)