Tom Verhoeff wrote:
In particular, casting is an operator that yields an rvalue, but not an lvalue. Casting needs to done to the right of the assignment operator.
Not really. A casting at the right of the assignment operator is called a value type cast, a casting at the left of the assignment operator is called a variable type cast. The rules for both are a bit different, e.g. a value type cast may allow a cast to a different size (e.g. to a different size integer), a variable type cast is more strict.
Regards,
Adriaan van Os