1
您好我正在讀通過斯科特·邁爾的有效的現代C++,並在其第25項已這個例子:爲什麼我們需要在構造函數的初始化列表中使用std :: move?
class Widget {
public:
Widget(Widget&& rhs)
: name (std::move(rhs.name)),
p(std::move(rhs.p)
{ ... }
...
}
我的問題這裏爲什麼我們需要std::move
爲rhs.name
?由於rhs
已經是右值,這是不是暗示rhs.name
也是一個右值,所以我們可以安全地移動它?
右值引用是左值 – xaxxon