Re[14]: const& foo VS const foo
От: valexey_  
Дата: 20.03.13 15:47
Оценка:
Здравствуйте, rusted, Вы писали:

_>>Естественно затем с 'a' и 'b' можно проводить любые эксперименты (избегая UB естественно) чтобы обнаружить различие в поведении.


R>Не про разницу в поведении, а просто про преимущества варианта со ссылкой. Если в процессе развития кода foo() поменяется и начнет возвращать константную ссылку, то в первом варианте у нас и так и так будет всё оптимально, а во втором появится ненужное копирование.


R>В качестве примера: boost::filesystem::path::generic_string() — под win возвращает новую строку, под nix — ссылку на внутреннюю. И если мы хотим избежать лишних копий и в тоже время иметь один и тот же код на разных платформах, то присваивание ссылке тут в самый раз.


Ну, это в общем то тоже разная семантика при изменении "внешнего окружения". Так что вполне подходит под изначальную задачу. Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.