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)
Definido en el encabezado <iterator>
(desde C++20)

El concepto indirectly_copyable_storable especifica la relación entre un tipo indirectly_readable y un tipo indirectly_writable . Además de indirectly_copyable , este concepto especifica que la copia desde el tipo indirectly_readable puede realizarse mediante un objeto intermedio.

Requisitos semánticos

In y Out modelan std :: indirectly_copyable_storable < In, Out > solo si dado un valor desreferenciable i de tipo In :

  • Después de la definición std:: iter_value_t < In > obj ( * i ) ; , obj es igual al valor previamente denotado por * i , y
  • si std:: iter_reference_t < In > es un tipo de referencia a rvalue, * i queda en un estado válido pero no especificado después de la inicialización de obj .

Preservación de la igualdad

Las expresiones declaradas en las requires expressions de los conceptos de la biblioteca estándar deben ser equality-preserving (excepto cuando se indique lo contrario).

Véase también

especifica que los valores pueden copiarse desde un indirectly_readable tipo a un indirectly_writable tipo
(concepto)
especifica que los valores pueden moverse desde un indirectly_readable tipo a un indirectly_writable tipo y que el movimiento puede realizarse a través de un objeto intermedio
(concepto)