温馨提示×

C++右值引用是否支持自定义类型

c++
小樊
82
2024-11-01 23:32:06
栏目: 编程语言

是的,C++右值引用支持自定义类型

#include <iostream>

class MyClass {
public:
    MyClass() { std::cout << "MyClass 构造函数" << std::endl; }
    ~MyClass() { std::cout << "MyClass 析构函数" << std::endl; }
};

MyClass&& myClassRValueReference(MyClass&& obj) {
    return obj;
}

int main() {
    MyClass obj;
    MyClass&& rvalueRef = myClassRValueReference(std::move(obj));
    return 0;
}

在这个例子中,我们定义了一个名为MyClass的类,并创建了一个名为myClassRValueReference的函数,该函数接受一个右值引用参数并返回它。在main函数中,我们创建了一个MyClass对象,然后使用std::move将其转换为右值,并将其传递给myClassRValueReference函数。这个例子展示了右值引用如何支持自定义类型。

0