std::ranges::cartesian_product_view<First, Vs...>::iterator<Const>::iterator
Von de.cppreference.net
/*iterator*/() = default;
|
(1) | (seit 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) | (seit 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) | (nur zur Darstellung*) |
Konstruiert einen Iterator.
1) Standardkonstruktor. Wertinitialisiert die
parent_ mit nullptr und standardinitialisiert die current_.2) Konvertierung von
/*iterator*/<false> nach /*iterator*/<true>. Initialisiert parent_ mit i.parent_ und current_ mit std::move(i.current_).3) Ein privater Konstruktor, der von cartesian_product_view::begin und cartesian_product_view::end verwendet wird. Dieser Konstruktor ist für Benutzer nicht zugänglich.
Initialisiert
parent_ mit std::addressof(parent) und current_ mit std::move(current).Parameter
| i | - | ein /*iterator*/ < false > |
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |