右值引用是C++11中新增新的引用类型。
右值引用只不过是一种新的 C++ 语法。
基于右值引用,引申出的 2 种 C++ 编程技巧:移动语义和完美转发,难以理解。
引入目的 作用好处
引入右值引用的主要目的是提高程序运行效率。有些对象在复制时需要进行深复制(拷贝),深拷贝往往非常耗时。合理使用右值引用可以避免深复制操作。
右值引用通过减少内存的重复申请、拷贝和释放,有效的提高C++程序的性能。
左值和右值
左值是可寻址的变量;(有名称,能获取其存储地址的实例对象)
右值是不可寻址的字面量,或者表达式求值过程中创建的可寻址的无名临时对象;
无名的临时变量只能在赋值号的右边,而不能出现在赋值号左边。
左值持久性,右值短暂性。