A prvalue (pure-rvalue) expression is an expression which lacks identity, whose evaluation is typically used to initialize an object, and which can be implicitly moved from. These include, but are not limited to:
std::string("123")
.1
, true
, 0.5f
, or 'a'
The built-in addressof operator (&
) cannot be applied on these expressions.