-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Можно ли как-то без временных переменных?

Среда, 22 Июля 2020 г. 22:40 + в цитатник
Qraizer:
Цитата OpenGL @
А ещё, полагаю, с этим тесно связано следующее

    std::string get_string();
    const std::string &x = get_string(); // Ok, string is alive
    std::string &y = get_string(); // Compiler error

что тоже не добавляет логичности и последовательности системе типов.

Это как раз продолжение этой же темы с временными объектами. Функция тебе вернула временный объект, который вскоре будет убит. Однако нередко нужно его использовать неоднократно, поэтому без продления его времени жизни пришлось бы копировать. (Нынче можно ещё переместить, впрочем, что в большинстве случаев решит проблему.) Но без const ты мог бы непреднамеренно, например отдав в другую функцию по неконстантной ссылке, его поменять. Тебе было бы приятно узнать, что между двумя использованиями он внезапно изменился?

https://forum.sources.ru/index.php?showtopic=419210&view=findpost&p=3834961

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку