std::ranges::lazy_split_view<V,Pattern>::lazy_split_view - cppreference.com

From cppreference.com

lazy_split_view()requiresstd::default_initializable<V>&&std::default_initializable<Pattern>=default; (1) (since C++20)constexprexplicitlazy_split_view(Vbase,Patternpattern); (2)(since C++20)template<ranges::input_rangeR>requiresstd::constructible_from<V,views::all_t<R>>&&std::constructible_from<Pattern,ranges::single_view<ranges::range_value_t<R>>>constexprexplicitlazy_split_view(R&&r,ranges::range_value_t<R>e); (3) (since C++20)Constructs a lazy_split_view.

2) Initializes the underlying view base_ with std::move(base) and the delimiter pattern_ with std::move(pattern).

3) Initializes the underlying view base_ with views::all(std::forward<R>(r)) and the delimiter pattern_ with ranges::single_view{std::move(e)}.

Parameters

base - the underlying view to be split pattern - a view to be used as the delimiter e - an element to be used as the delimiter Example

Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior

LWG 3714

(

P2711R1

) C++20 the multi-parameter constructor (

2

) was not explicit made explicit