渡しても、実際にムーブするかどうかはクラスの実装による。ムーブも出来るし、コピーも出来る。キャストして渡してる以上、ムーブされる前提で考えるのが普通だろう。為のコンストラクタ、オペレーターが呼ばれる。ムーブの実現方法は各クラスの実装による。}これらは特別なメンバー関数になるので、暗黙的に定義される場合と明示的に定義する場合とを考えると、かなりややこしく、頭が沸騰しそうになる。定義され、ムーブで呼ばれる。operatorムーブコンストラクタ、ムーブ代入演算子は暗黙的に宣言されず、ムーブ時にはコピーで処理される。私はこの仕様を読んでいる時、プレデターと勇猛果敢に戦ったシュワちゃんの気持ちが少しだけわかりました。定義であれば必要によってコンパイルエラーになる。利用するべきか今後、使う予定のないオブジェクトはムーブしたほうが速く済む。メンバに持つオブジェクトの構築時とか。併用することで世界が平和になる)。