std::ranges::lazy_split_view<V,Pattern>::end
来自 cppreference.cn
< cpp | ranges | lazy split view
constexpr auto end() requires ranges::forward_range<V> && ranges::common_range<V>; |
(1) | (C++20 起) |
constexpr auto end() const; |
(2) | (C++20 起) |
返回一个迭代器或有时是一个哨位,表示 view
的末尾。令 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;
[编辑] 返回值
一个 outer_iterator
或一个 std::default_sentinel,表示 view
的末尾。
[编辑] 示例
运行此代码
#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) |
返回一个哨位,指示范围的末尾 (定制点对象) |