Namespaces
Variants

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

De es.cppreference.net
 
 
Biblioteca de rangos
Adaptadores de rango
 
 
lazy_split_view()
    requires std::default_initializable<V> &&
             std::default_initializable<Pattern> = default;
(1) (desde C++20)
constexpr explicit lazy_split_view( V base, Pattern pattern );
(2) (desde 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) (desde C++20)

Construye un lazy_split_view.

1) Constructor por defecto. Inicializa por valor la vista subyacente base_ y el delimitador pattern_.
2) Inicializa la vista subyacente base_ con std::move(base) y el delimitador pattern_ con std::move(pattern).
3) Inicializa la vista subyacente base_ con views::all(std::forward<R>(r)) y el delimitador pattern_ con ranges::single_view{std::move(e)}.

Parámetros

base - la vista subyacente que se dividirá
pattern - una vista que se usará como delimitador
e - un elemento que se usará como delimitador

Ejemplo

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 3714
( P2711R1 )
C++20 el constructor multiparámetro ( 2 ) no era explícito hecho explícito