moveコンストラクタを作ったら気づくと思うが、処理内容は結局コピーコンストラクタと同じなわけ
とどのつまり、ポインタをメンバーに持ったクラスを定義する時に有効なんだよ
コピーコンストラクタ(lvalue)だと、コピー元は存在し続ける可能性があるから、
必ず1から全データを作り直して、ポインターのポイント先を新データにしないといけない
でも、rvalueで捨ててもいいデータだと分かっていたら、捨てるデータを捨てずにそのまま使って
ポインタのポイント先をその捨てるデータにすればよいから、楽で速いよねという話