std::ranges::cartesian_product_view<First, Vs...>::iterator<Const>::iterator
De es.cppreference.net
/*iterator*/() = default;
|
(1) | (desde C++23) |
constexpr /*iterator*/( /*iterator*/<!Const> i )
requires Const && (
std::convertible_to<ranges::iterator_t<First>, ranges::iterator_t<const First>>
&& ... &&
std::convertible_to<ranges::iterator_t<Vs>, ranges::iterator_t<const Vs>>
);
|
(2) | (desde C++23) |
private:
constexpr /*iterator*/(
/*Parent*/& parent,
std::tuple<ranges::iterator_t</*maybe-const*/<Const, First>>,
ranges::iterator_t</*maybe-const*/<Const, Vs>>...> current );
|
(3) | (solo para exposición*) |
Construye un iterador.
1) Constructor por defecto. Inicializa por valor el
parent_ con nullptr e inicializa por defecto el current_.2) Conversión de
/*iterator*/<false> a /*iterator*/<true>. Inicializa parent_ con i.parent_ y current_ con std::move(i.current_).3) Un constructor privado que es usado por cartesian_product_view::begin y cartesian_product_view::end. Este constructor no es accesible para los usuarios.
Inicializa
parent_ con std::addressof(parent) y current_ con std::move(current).Parámetros
| i | - | un /*iterator*/ < false > |
Ejemplo
|
Esta sección está incompleta
Razón: sin ejemplo |