A move constructor enables the resources owned by an rvalue object to be moved into an lvalue without copying . For more information about move semantics, see Rvalue Reference Declarator: &&. This topic builds upon the following C++ class, MemoryBlock , which manages a memory buffer.