От языка программирования C Брайана У. Кернигана
& оператор применим только к объектам в памяти: переменные и массив элементы. Он не может применяться к выражениям, константам или регистру переменные.
Где выражения и константы хранятся, если не в памяти? Что означает эта цитата?
например: &(2 + 3)
Почему мы не можем принять его адрес? Где он хранится?
Будет ли ответ одинаковым для С++ также, поскольку C является его родителем?
Этот связанный вопрос объясняет, что такие выражения являются объектами rvalue
, а все объекты rvalue
не имеют адресов.
Мой вопрос в том, где хранятся эти выражения, чтобы их адреса не могли быть восстановлены?