提问人:Suat Mutlu 提问时间:6/19/2023 最后编辑:Solomon UckoSuat Mutlu 更新时间:6/19/2023 访问量:85
右值引用何时会导致移动与复制构造函数,为什么?[复制]
When does an rvalue reference result in a move vs copy constructor and why? [duplicate]
问:
我对右值引用的显式用法感到困惑。
假设我们有一个名为 ClassX 的类,它有所有的复制和移动方法。当我执行下面的代码时,调用了不同的复制方法(复制构造函数和移动构造函数)。但我希望总是执行移动构造函数。当我将对象显式绑定到右值引用并将其用作复制对象时,为什么会调用复制构造函数?
ClassX c = std::move(object_c); // Invokes move constructor
ClassX&& cr = std::move(object_c);
ClassX c = cr; // Invokes copy constructor
答: 暂无答案
上一个:构造 3D 矢量类时出错
下一个:通过引用和复制调用函数的 C++
评论
cr
ClassX c = std::move(cr);
std::move