std::experimental::ranges:: MoveConstructible
From cppreference.net
<
cpp
|
experimental
|
ranges
|
Definido en el encabezado
<experimental/ranges/concepts>
|
||
|
template
<
class
T
>
concept
bool
MoveConstructible
=
|
(ranges TS) | |
El concepto
MoveConstructible
se satisface si
T
es un tipo de referencia, o si es un tipo de objeto donde un objeto de ese tipo puede construirse a partir de un valor R de ese tipo en contextos de inicialización directa y copia, con la semántica habitual.
Más precisamente, si
T
es un tipo de objeto, entonces
MoveConstructible<T>
se satisface solo si dado
-
rv, un valor r de tipoT, y -
u2, un objeto distinto de tipoTigual arv,
lo siguiente es cierto:
-
Después de la definición
T u
=
rv
;
,
ues igual au2; -
T{rv}es igual au2; y -
Si
Tno está calificado como const, entonces el estado resultante derv(después de que la definición/expresión se evalúe en cualquiera de los puntos anteriores) es válido pero no especificado; de lo contrario, permanece sin cambios.
Véase también
|
(C++11)
(C++11)
(C++11)
|
verifica si un tipo puede ser construido desde una referencia a valor temporal
(plantilla de clase) |