На странице Как создать конструктор Move Move В Microsoft есть пример того, как написать конструктор перемещения. По существу это форма:
MyClass::MyClass(MyClass&& lhs)
{
*this = std::move(lhs);
}
Я пробовал, и std::move
действительно требуется здесь, но почему? Я думал, что единственным движением было преобразование в T&&
. Но lhs
уже имеет тип MyClass&&
, не так ли?