¿Cómo se pueden usar los objetos movidos? [duplicar]
Esta pregunta ya tiene una respuesta aquí:
¿Qué puedo hacer con un objeto movido desde? 2 respuestasDespués de mover un objeto, debe ser destruible:
T obj;
func(std::move(obj));
// don't use obj and let it be destroyed as normal
Pero, ¿qué más se puede hacer con obj? ¿Podrías mover otro objeto dentro?
T obj;
func(std::move(obj));
obj = std::move(other);
¿Depende esto del tipo exacto? (Por ejemplo, std :: vector podría hacer garantías específicas en las que no puede confiar para todas las T.) ¿Es necesario o incluso sensato que todos los tipos admitan algo además de la destrucción en los objetos que se mueven?