左值:表达式结束后依然存在的对象 右值:表达式结束后就不存在的临时对象
2.如何判断左值和右值
能不能对表达式取地址,如果能,就是左值,否则就是右值
3.对下面的语句进行区分
int a = 3; ///< a是左值, int b = 4; ///< b是左值 a + b; ///< a + b 产生的值是临时变量,无法对(a + b)取地址,所以是右值