左值(LValue)和右值(RValue)的一个快捷记法是赋值运算,左值是赋值运算左边的值,右值就是右边(=,=废话).例如: int a = 5; a就是左值,5就是右值. 当然,如果真是这么个含义,那么这概念就相当蛋疼了.其实不是这样的~~ 左值其实是对一块内存区域的引用(这个还不是C++中的int &a之类的引用),比如上边的a,就对应了一块内存区域(起始地址为&a,大小为sizeof(int)). 更专业的定义在这里: An object is a region of storag…
左值引用是已定义的变量的别名,其主要用途是用作函数的形参,通过将左值引用变量用作参数,函数将使用原始数据,而不是副本.引用变量必须在声明时同时初始化,可将 const 关键字用于左值引用,如下所示: //声明并初始化常规左值引用变量 int x = 55; int & rx = x; //将const关键字用于左值引用变量,以下几种为等效表示 int x = 55; const int & crx = x; int const & crx = x; 在 Microsoft Visu…