Namespaces
Variants

std:: indirectly_copyable_storable

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
indirectly_copyable_storable
(C++20)
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
Défini dans l'en-tête <iterator>
(depuis C++20)

Le concept indirectly_copyable_storable spécifie la relation entre un type indirectly_readable et un type indirectly_writable . En plus du concept indirectly_copyable , ce concept spécifie que la copie depuis le type indirectly_readable peut être effectuée via un objet intermédiaire.

Exigences sémantiques

In et Out modèlent std :: indirectly_copyable_storable < In, Out > seulement si, étant donné une valeur déréférençable i de type In :

  • Après la définition std:: iter_value_t < In > obj ( * i ) ; , obj est égal à la valeur précédemment désignée par * i , et
  • si std:: iter_reference_t < In > est un type de référence rvalue, * i est placé dans un état valide mais non spécifié après l'initialisation de obj .

Préservation de l'égalité

Les expressions déclarées dans les requires expressions des concepts de la bibliothèque standard doivent être equality-preserving (sauf indication contraire).

Voir aussi

spécifie que les valeurs peuvent être copiées d'un type indirectly_readable vers un type indirectly_writable
(concept)
spécifie que les valeurs peuvent être déplacées d'un type indirectly_readable vers un type indirectly_writable et que le déplacement peut être effectué via un objet intermédiaire
(concept)