2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
||||||
1 | ||||||
Возвращение const ссылки на временный объект12.10.2016, 22:51. Показов 6336. Ответов 30
Метки нет (Все метки)
Добрый вечер,
const auto& не продлит жизнь временного? Или код с UB ?
0
|
12.10.2016, 22:51 | |
Ответы с готовыми решениями:
30
Возвращение ссылки на локальный объект Возвращение ссылки на локальный объект Временный объект Возвращение ссылок с const |
Неэпический
|
||||||
13.10.2016, 07:51 | 21 | |||||
nd2, там ссылка static:
0
|
Неэпический
|
||||||
13.10.2016, 08:01 | 23 | |||||
а тЫ? Я про код TheCalligrapher.
Если тЫ про код с скриншота, то там тоже всё в порядке. Ссылки идут в функцию, там создается объект, не важно, будет там копирование или сразу в возвращаемое значение, этот объект и возвращается из функции, а не ссылка на этот объект. А уже дальше имеем продление жизни, подобно этому:
0
|
Вездепух
11696 / 6375 / 1724
Регистрация: 18.10.2014
Сообщений: 16,076
|
|
13.10.2016, 08:02 | 24 |
Почему неверна? Верна. Но не имеет отношения к процитированному вами правилу.
Ситуация c greeting и add в этой цитате - эта ситуация с возвращением временного объекта из функции по значению. Никакой ссылки в этой цитате из add не возвращается. Ссылка возникает только снаружи функции.Поэтому к правилу "Привязывание возвращаемой из функции константной ссылки к временному объекту вообще не продлевает время жизни временного объекта" эта цитата никакого отношения не имеет. Это правило ведет речь именно и только о возвращении ссылки из функции. Т.е. ссылка возникает внутри функции.
1
|
Неэпический
|
||||||
13.10.2016, 08:06 | 26 | |||||
Вы процитировали это:
это вот про это:
Потому что надо уточнять про что пишите. В теме с std::string есть только код пользователя TheCalligrapher, Ваш код со скриншота не считается.
0
|
Вездепух
11696 / 6375 / 1724
Регистрация: 18.10.2014
Сообщений: 16,076
|
|
13.10.2016, 08:08 | 27 |
Да, совершенно верно.
В отрывке же из книги, приведенном nd2, ситуация совсем другая.
0
|
Неэпический
|
|
13.10.2016, 08:16 | 29 |
Угу, но
Я вообще сначала хотел Вас раскритиковать в теме, но потом перечитал, вроде как всё правильно, при первом прочтении что-то не так понял.
0
|
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
13.10.2016, 14:23 | 31 |
0
|
13.10.2016, 14:23 | |
13.10.2016, 14:23 | |
Помогаю со студенческими работами здесь
31
Ссылка на временный объект Временный объект и конструктор копирования Не создаётся ссылка на временный объект Возвращение ссылки из функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |