Протягивают ли нестатические поля типа эталонного типа Const LVALUE на срок службы временного? [дублировать]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Протягивают ли нестатические поля типа эталонного типа Const LVALUE на срок службы временного? [дублировать]

Сообщение Anonymous »

Первоначально, для меня ответ был очевиден. Тем не менее, я наткнулся на ответ, объясняющий временные привязки с постоянными ссылками на LVALUE, в котором указывается следующее: < /p>

Это относится только к ссылкам на основе стека. Это не работает для
ссылок, которые являются членами объектов. Однако я попробовал следующий кусок кода: < /p>
#include

struct Referred final {
~Referred()
{
std::cout
The temporary is alive here!
Referred dtor called!
< /code>
Мне удалось найти заметку в стандарте, которая не отвечает на вопрос явно, но намекает на утвердительный ответ: < /p>

Если временный объект имеет ссылочный член -член -член -член -инициализированным < /> временным объектом, продюсируемое время жизни. /> < /blockquote>
Возможно, в стандарте есть что -то еще, что ускользнуло от моего внимания. Я хотел бы прояснить навсегда: Поля нестатических объектов постоянного типа ссылки LVALU>

Подробнее здесь: https://stackoverflow.com/questions/795 ... ime-of-a-t
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»