理解1: 左值和右值针对等号而言, 等号左边称为左值, 等号右连称为右值. 理解2: 左值和右值针对表达式而言, 表达式结束后依然存在的持久对象称为左值, 表达式结束后不存在的持久对象称为右值. 理解3: 左值和右值针对地址而言, 拥有地址的对象称为左值, 没有地址的对象称为右值. C++11的值分类: 更简单,直接,形象的理解为: 左值可以理解为有地址,有内容 C++以前的赋值默认基于拷贝, 效率低, 性能差. 亟需向前优化,又须向后兼容. 最佳实践就是使用某种方式区别对待/分开处理二者. 左