В C ++, когда у вас есть следующее:
std::string get_string();
std::string const& v = get_string();
Срок действия временного значения, возвращаемого из get_string (), продлевается на то же время существования ссылки v;
Если у меня естьследующее:
std::string const& get_string(std::string const& p) {
return p;
}
std::string const& v =
get_string(std::string{"Hello"});
Продлен ли срок действия временного?или это висячая ссылка;
Насколько я понимаю, временная привязка связана с временем жизни p и существует только на время действия функции, а вторичные ссылки на временную переменную не увеличивают время жизни.
Каков ожидаемый результат?