C++ 中的左值与右值

左值:命名对象、可取地址&,可赋值

  • 基本类型变量、数组、数组元素
  • 字符串字面量,如“CppCamp”
  • 对象变量、对象成员
  • 指针、指针解引用后的对象/变量
  • 函数(可取地址)
  • 返回左值的表达式

右值:无名、无法取地址,不可赋值

  • 各种临时对象(函数返回值)、字符串临时对象
  • 除字符串外的其他基本类型字面量
  • lambda表达式
  • 运算符表达式
打赏作者