首页 > 编程语言 > 详细

c++11新特性之右值引用

时间:2019-10-16 14:44:49      阅读:63      评论:0      收藏:0      [点我收藏+]

我们说过一个变量分为两个部分,左值和右值

左值代表变量内存区域

右值代码内存区域所存的值

我们平时说的引用是左值引用,c++11引入了右值引用

右值引用就是绑定到右值上的引用。用&&进行定义

类型 &&引用名 = 表达式

我们看几个例子了解一下

double r = 10;
double &r1 = r;//正确,左值引用 
double &r2 = r + 10;//错误,左值引用右边必须是变量,不可以是表达式 
double &&r3 = r;//错误,右值引用右边必须是常量或者表达式 
double &&r4 = r + 10;//正确 

 右值引用的特点是只能绑定到即将销毁的对象上,如常量或表达式

#include<iostream>
using namespace std;
int main()
{
	int x = 10;
	int &r = x;
	int &&rx = x + 10*3;
	
	cout << "x = " << x << "\t rx = " << rx << endl;
	x = 20;
	cout << "x = " << x << "\t rx = " << rx << endl;
	int y = rx;
	cout << "y = " << y << endl;
	return 0;
 } 

  技术分享图片

c++11新特性之右值引用

原文:https://www.cnblogs.com/mch5201314/p/11685153.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!