私std::moveがここに投稿するのを見るほとんどの場合、それは<utility>バージョンを参照しています。
std::moveで<algorithm>、実際には、その名前が示唆している何を移動し、一方std::moveでは、<utility>ちょうど基本的に最終的には左辺値にはxValueを移動するための前処理段階ではxValue、にその引数をキャストします。それでmove、それぞれの機能が異なるときに、これらの両方に名前を付けるのは、ちょっと混乱しませんか?
move呼ばれるべきmake_rvalueでしたか、それらの線に沿って何か。単一のパラメーターでstd::moveは実際には何も動かないことを何度も説明するのはイライラします。
<algorithm>は、単に<utility>範囲全体に適用されたものです。
<algorithm>実際に移動を実行します(移動する型に定義された移動代入演算子があると仮定します)。
std::moveライブラリ関数の代わりに演算子を作成する必要がありました。std::move長くなっていたよりも良い名前は、それはひどいです。