Namespaces
Variants

std::ranges::transform_view<V,F>::iterator

Depuis fr.cppreference.net
 
 
Bibliothèque des ranges
Adaptateurs de range
 
 
template< bool Const >
class /*iterator*/
(depuis C++20)
(exposé uniquement*)

Le type de retour de transform_view::begin, et de transform_view::end lorsque la vue sous-jacente est un common_range.

Le type /*iterator*/<true> est retourné par les surcharges qualifiées const. Le type /*iterator*/<false> est retourné par les surcharges non qualifiées const.

Types membres

Membre Définition
Parent (privé) maybe-const <Const, ranges::transform_view<V, F>>
(type membre d'exposition uniquement*)
Base (privé) maybe-const <Const, V>
(type membre d'exposition uniquement*)
iterator_concept
iterator_category
(présent uniquement si Base modélise
forward_range)
Soit MCF soit maybe-const <Const, F>.
  • std::input_iterator_tag, si std::invoke_result_t<MCF&, ranges::range_reference_t<Base>> n'est pas une référence.

Sinon, soit C soit std::iterator_traits<ranges::iterator_t<Base>>::iterator_category.

  • std::random_access_iterator_tag, si C est std::contiguous_iterator_tag;
  • C, sinon.
value_type std::remove_cvref_t<std::invoke_result_t<MCF&, ranges::range_reference_t<Base>>>, où MCF désigne maybe-const <Const, F>
difference_type ranges::range_difference_t<Base>

Membres de données

Membre Description
maybe-const <Const, V> current_ (privé) un itérateur
(objet membre d'exposition uniquement*)
ranges::transform_view* parent_ (privé) un pointeur vers l'objet parent
(objet membre d'exposition uniquement*)

Fonctions membres

construit un itérateur
(fonction membre publique)
retourne l'itérateur sous-jacent
(fonction membre publique)
accède à l'élément transformé
(fonction membre publique)
accède à un élément par index
(fonction membre publique)
avance ou décrémente l'itérateur sous-jacent
(fonction membre publique)

Fonctions non membres

compare les itérateurs sous-jacents
(fonction)
effectue des opérations arithmétiques sur les itérateurs
(fonction)
(C++20)
obtient une référence rvalue à l'élément transformé
(fonction)

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement publié Comportement corrigé
P2259R1 C++20 le membre iterator_category est toujours défini défini uniquement si Base modélise forward_range
LWG 3555 C++20 la définition de iterator_concept ignore const modifié pour prendre en compte
LWG 3798 C++20 iterator_category est input-only si le résultat de transformation est une référence rvalue peut avoir une catégorie plus forte