C++对简单类型(Vector3,Matrix等)的rvalue引用构造函数的好处

Ale*_*son 0 c++ reference rvalue

如果传递的对象没有复杂数据,使用右值引用是否有任何优势?例如,以下是否比使用引用有任何优势?

class Vector3
{
public:
    float X, Y, Z;

    Vector3(const Vector2& vector2, float z)
        : X(vector2.X), Y(vector2.Y), Z(z)
    {

    }

    // Is this any better than the above?
    Vector3(Vector2&& vector2, float z)
        : X(std::move(vector2.X), Y(std::move(vector2.Y), Z(z)
    {

    }
};
Run Code Online (Sandbox Code Playgroud)

Eva*_*ran 5

我相信你给出的例子没有任何好处.对于基本数字类型,例如float移动和复制,实际上是相同的操作.