Namespaces
Variants

std::ranges::adjacent_transform_view<V,F,N>::iterator<Const>::iterator

Depuis fr.cppreference.net
 
 
Bibliothèque des plages
Adaptateurs de plages
 
 
/*iterator*/() = default;
(1) (depuis C++23)
constexpr /*iterator*/( /*iterator*/<!Const> i )
    requires Const &&
        std::convertible_to</*inner-iterator*/<false>, /*inner-iterator*/<Const>>;
(2) (depuis C++23)
private:
constexpr /*iterator*/( Parent& parent, /*inner-iterator*/<Const> inner );
(3) (exposé uniquement*)

Construire un itérateur.

1) Constructeur par défaut. Initialise par valeur le pointeur sous-jacent parent_ avec nullptr, et initialise par défaut l'itérateur sous-jacent inner_.
2) Conversion depuis /*iterator*/<false> vers /*iterator*/<true>. Initialise le pointeur sous-jacent parent_ avec i.parent_, et construit par déplacement l'itérateur sous-jacent inner_ avec std::move(i.inner_).
3) Cet itérateur a également un constructeur privé qui est utilisé par ranges::adjacent_transform_view::begin et ranges::adjacent_transform_view::end. Ce constructeur n'est pas accessible aux utilisateurs. Initialise parent_ avec std::addressof(parent), et construit par déplacement inner_ avec std::move(inner).

Paramètres

i - un /*iterator*/ < false >
parent - un objet propriétaire de type adjacent_transform_view
inner - un itérateur de type adjacent_transform_view:: inner_iterator

Exemple