O Que São Move Semantics?
As move semantics permitem que um valor entregue seus recursos subjacentes, como um buffer no heap, a outro valor transferindo a posse em vez de duplicar os dados. O objeto de origem fica válido, porém esvaziado, para que possa ser destruído com segurança. Isso transforma cópias caras de objetos grandes em transferências baratas no nível de ponteiro.
Por que importa
Mover em vez de copiar evita alocações e cópias profundas desnecessárias, o que é um grande ganho de desempenho para containers e objetos grandes. Também expressa claramente a transferência de posse no sistema de tipos.
Guias relacionados
What Is Ownership in Memory Management?Ownership is a model where each resource has a single owning variable responsible for freeing it, making clea…
What Is RAII?RAII ties a resource lifetime to an object lifetime, acquiring it on construction and releasing it automatica…
What Is Reference Counting?Reference counting tracks how many references point to an object and frees it automatically when that count d…