下面是一个使用C++11中的左值引用和右值引用的例子:

#include <iostream>
#include <vector>

// 接受左值引用的函数
void modifyValue(int& value) {
    value = 100;
}

// 接受右值引用的函数
void modifyValue(int&& value) {
    value = 200;
}

int main() {
    int x = 10;

    // 将x作为左值引用传递给函数
    modifyValue(x);
    std::cout << "x = " << x << std::endl;  // 输出: x = 100

    // 将临时变量作为右值引用传递给函数
    modifyValue(20);
    std::cout << "x = " << x << std::endl;  // 输出: x = 100

    return 0;
}

在上面的例子中,我们定义了两个函数modifyValue,一个接受左值引用,一个接受右值引用。在main函数中,我们首先将变量x作为左值引用传递给函数modifyValue,这时函数修改了x的值为100。然后,我们将临时变量20作为右值引用传递给函数modifyValue,这时函数修改了临时变量的值为200,但并没有影响到x的值。

左值引用可以绑定到左值,而右值引用可以绑定到右值,通过使用左值引用和右值引用,我们可以更灵活地处理不同类型的值,提高代码的效率和性能。

c++11 左值右值引用例子

原文地址: http://www.cveoy.top/t/topic/i7t4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录