创建它的表达式中可以被访问。函数名字是左值（在C语言中规定它既不是左值也不是右值），数组名是常量左值，但是在大多数表达式中函数名字与数组名字自动隐式转换为右值。右值的生存期短暂，所以需要用左值去捕捉右值。把右值复制（copy）到左值上是常见操作。C++11标准引入了右值引用数据类型与移动语义，因而左值与右值的定义发生了很大变化。右值引用变量绑定到右值上，延长了右值对应的临时对象的生存期。移动语义把临时对象的内容移动（move）到左值对象上。因而在C++11，对于值的分类，要考虑标识（identity）与