C++ STL 算法


表达式的值类别必属于左值或者右值,而右值又可以分成纯右值、将亡值两种:

  • 纯右值(prvalue):非引用返回的临时变量、运算表达式产生的临时变量、原始字面量和lambda表达式等;

  • 将亡值(xvalue):与右值引用相关的表达式,通常指将要被移动的对象。如,函数返回类型为T&&、std::move的返回值、转换为T&&的类型转换函数的返回值等(注意,这些都是与右值引用相关的表达式),具体的会在下文介绍。