Почему в приведенном ниже коде отсутствует ссылка? Я думал, что ссылки на const всегда продлевают срок службы временного до их объема.C++ dangling const ссылается на временный объект
boost::filesystem::recursive_directory_iterator it(dir_name);
const std::string& extension = it->path().extension().string();
std::cout << extension << std::endl; // error, dangling reference
«[...] Ссылки на const всегда продлевают срок службы временного их объема». Почему они? – JBL
Что говорит вам, что это болтливая ссылка? –
@JBL: Потому что язык говорит об этом. Пока инициализатор фактически является временным. –