std::move(x) 関数は物理的には何も移動しませんが、次のように動作します。右辺値へのキャスト。この命名決定は、コードの可読性を高めるために行われました。
右辺値参照に関する以前の議論では、キャストの背後にある意図を伝えるために、特に移動セマンティクスを有効にするために、構文シュガー「move」が導入されました。この名前は、より技術的な「cast_to_rvalue」を置き換えるものであり、その目的について疑問が生じる可能性があります。
「move」を使用することで、コードは右側からコピーするのではなく、右側から移動する意図を明示的に示します。特定の実装の詳細を理解する必要はありません。
std::move の基礎となるメカニズムは xvalue へのキャストですが、その主な影響はコンパイル中にあり、移動代入演算子の存在に基づいて適切なオーバーロードを選択します。実行時には、std::move は完全に消え、簡単に移動可能なオブジェクトのオブジェクト コードに目立った影響はありません。
以上がなぜ `std::move` は `std::move` という名前なのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。