Published Jul 02, 2019
[
 
]
Each C++ expression is characterized by two independent properties: a type and a value category. Each Expression has some non-reference type, and each experssion belongs to exactly one of the three primary value categories: prvalue, xvalue, and lvalue, defined as follows: