std::ranges::lazy_split_view<V, Pattern>::outer_iterator<Const>::value_type
来自 cppreference.cn
< cpp | ranges | lazy_split_view
| struct value_type : ranges::view_interface<value_type> |
(C++20 起) | |
迭代器 ranges::lazy_split_view<V, Pattern>::outer_iterator<Const> 的值类型。
目录 |
[编辑] 数据成员
| 成员 | 描述 |
outer_iterator i_ (私有) |
指向外部类底层 view 的迭代器(仅用于阐释的成员对象*) |
[编辑] 成员函数
| (构造函数) |
构造一个 value_type 对象(仅用于说明的成员函数*) |
| begin |
返回一个指向内部范围开头的 inner_iterator(公开成员函数) |
| end |
返回一个 std::default_sentinel (公开成员函数) |
继承自 std::ranges::view_interface | |
返回派生视图是否为空,仅当其满足 sized_range 或 forward_range 时提供( std::ranges::view_interface<D> 的公共成员函数) | |
| (C++23) |
返回范围开头的常量迭代器 ( std::ranges::view_interface<D> 的公共成员函数) |
| (C++23) |
返回范围常量迭代器的哨兵 ( std::ranges::view_interface<D> 的公共成员函数) |
| 返回派生视图是否非空,仅当 ranges::empty 适用于它时提供 ( std::ranges::view_interface<D> 的公共成员函数) | |
返回派生视图中的第一个元素,如果它满足 forward_range 则提供( std::ranges::view_interface<D> 的公共成员函数) | |
[编辑] 成员函数
std::ranges::lazy_split_view::outer_iterator::value_type::value_type
| constexpr explicit value_type(/*outer_iterator*/ i); // exposition only |
(C++20 起) | |
使用 std::move(i) 初始化 i_。
std::ranges::lazy_split_view::outer_iterator::value_type::begin
| constexpr /*inner_iterator*/<Const> begin() const; |
(C++20 起) | |
等价于 return /*inner_iterator*/<Const>{i_};。
std::ranges::lazy_split_view::outer_iterator::value_type::end
| constexpr std::default_sentinel_t end() const noexcept; |
(C++20 起) | |
[编辑] 缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
| 缺陷报告 | 应用于 | 发布时的行为 | 正确的行为 |
|---|---|---|---|
| LWG 3593 | C++20 | end 不应该为 noexcept |
已改为 noexcept |
| LWG 4013 | C++20 | value_type 曾可默认构造 |
不可默认构造 |