В 3.10/10 в стандарте говорится:
Для изменения объекта требуется lvalue для объекта, за исключением того, что rvalue типа класса также может использоваться для изменения его референта при определенных обстоятельствах. [Пример: функция-член, вызываемая для объекта (9.3), может изменять объект. ]
Таким образом, значения r не изменяются, за исключением определенных условий. Нам говорят, что вызов функции-члена является одним из тех исключений. Это дает представление о том, что существуют способы изменения объектов, кроме вызова функции-члена. Я не могу придумать способ.
Как можно изменить объект без вызова функции-члена?