Namespaces
Variants

std::ranges::lazy_split_view<V,Pattern>::lazy_split_view

来自 zh.cppreference.net
 
 
范围库
范围适配器
 
 
lazy_split_view()
    requires std::default_initializable<V> &&
             std::default_initializable<Pattern> = default;
(1) (C++20 起)
constexpr explicit lazy_split_view( V base, Pattern pattern );
(2) (C++20 起)
template< ranges::input_range R >
    requires std::constructible_from<V, views::all_t<R>> &&
             std::constructible_from<Pattern, ranges::single_view<
                                                  ranges::range_value_t<R>>>
constexpr explicit lazy_split_view( R&& r, ranges::range_value_t<R> e );
(3) (C++20 起)

构造一个 lazy_split_view。

1) 默认构造函数。以值初始化底层视图 base_和分隔符 pattern_。
2) 以 base_ 初始化底层视图 std::move(base),并以 pattern_ 初始化分隔符 std::move(pattern)。
3) 以 base_ 初始化底层视图 views::all(std::forward<R>(r)),并以 pattern_ 初始化分隔符 ranges::single_view{std::move(e)}。

参数

base - 待分割的底层视图
pattern - 用作分隔符的视图
e - 用作分隔符的元素

示例

缺陷报告

下列行为变更缺陷报告被追溯应用于先前发布的C++标准。

缺陷报告 应用于 发布时的行为 正确行为
LWG 3714
( P2711R1 )
C++20 多参数构造函数 ( 2 ) 未声明为 explicit 改为 explicit