このMSDNの記事を参照すると、最後に(セクション:ロバストプログラミング)、次のように記載されています。
リソースリークを防ぐために、ムーブ代入演算子で常にリソース(メモリ、ファイルハンドル、ソケットなど)を解放してください。
代わりにムーブ代入が次のように実装された場合はどうなりますか。
MemoryBlock& operator=(MemoryBlock&& other)
{
if (this != &other)
{
std::swap(_data, other._data);
std::swap(_length, other._length);
}
return *this;
}
「他の」参照の右辺値の「_data」は、スコープ外になると解放されませんか?