Как стать автором
Обновить

Комментарии 2

И сколько же теряем в производительности в результате такого несовершенства мира? Не говоря уже об инлайнинге? Где анализ?
A correctly-specified ABI should pass large structures by immutable reference, usually obviating the copy. In the event that a copy is needed, it will generally happen only once, in the callee, rather than needing to be repeated by every caller. The callee also has more flexibility, and can copy only those portions of the structure that are actually modified.

никак не могу согласиться, такой подход нельзя делать стандартом.
в этом случае неизменность исходной структуры лежит на совести вызываемой функции, что, по моему мнению, зачастую будет приводить к появлению (весьма вероятно трудноотлавливаемых) ошибок.
да, можно использовать, но только адресно, в критичных по производительности местах, как некий хак.


P.  S. цитирую оригинал, так как перевод просто ужасен

Зарегистрируйтесь на Хабре, чтобы оставить комментарий