命名空间
变体
操作

std::ranges::lazy_split_view<V, Pattern>::outer_iterator<Const>::value_type

来自 cppreference.cn
 
 
范围库 (Ranges library)
范围适配器 (Range adaptors)
 
 
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_rangeforward_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 起)

返回 std::default_sentinel

[编辑] 缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 发布时的行为 正确的行为
LWG 3593 C++20 end 不应该为 noexcept 已改为 noexcept
LWG 4013 C++20 value_type 曾可默认构造 不可默认构造