std::ranges::lazy_split_view<V,Pattern>::end
来自 zh.cppreference.net
constexpr auto end() requires ranges::forward_range<V> && ranges::common_range<V>;
|
(1) | (C++20 起) |
constexpr auto end() const;
|
(2) | (C++20 起) |
返回一个迭代器或有时返回一个哨位,表示 视图的结尾。设 base_ 为底层视图。
1) 返回一个迭代器。等价于:
return /*outer_iterator*/</*simple_view*/<V>>{*this, ranges::end(base_)};.2) 返回一个
outer_iterator 或一个 std::default_sentinel。
等价于:
if constexpr (ranges::forward_range<V> && ranges::forward_range<const V> &&
ranges::common_range<const V>)
return /*outer_iterator*/<true>{*this, ranges::end(base_)};
else
return std::default_sentinel;
返回值
一个表示该
view
末尾的
outer_iterator
或
std::default_sentinel
。
示例
运行此代码
#include <iostream> #include <ranges> #include <string_view> int main() { constexpr std::string_view keywords{"false float for friend"}; std::ranges::lazy_split_view kw{keywords, ' '}; const auto count = std::ranges::distance(kw.begin(), kw.end()); std::cout << "Words count: " << count << '\n'; }
输出:
Words count: 4
参见
|
返回指向起始位置的迭代器
(公开成员函数) |
|
|
返回指向末尾的迭代器或哨兵
(
std::ranges::split_view<V,Pattern>
的公开成员函数)
|
|
|
(C++20)
|
返回指向范围起始位置的迭代器
(定制点对象) |
|
(C++20)
|
返回指示范围末尾的哨兵
(定制点对象) |