摘要:
其实没有特意的想去研究研究C++的左值与右值,但是学习小组在研究引用的时候,发现右值引用这个大坑,而右值引用又是C++11才提出的,看了看,还是总结下一、左值与右值的定义 在不同的C++标准里,对左值和右值的定义是有所不同的。C++03版: ①对于一个表达式,其不是左值就是右值; ②左值是对象(指针,对象实例)或者函数(比如返回引用的函数,这里有一点很重要只有声明没有初始化的就不能成为左值,比如char* p;初始化为空*p不是左值,因为*p不是对象)。一些右值也是对象(另外一些右值是宏定义的常量、整形字面量、字符串字面量、浮点数字面量等); ③一些内建的操作符和函数调用会产生左值。E... 阅读全文