Re[13]: string_view по ссылке или по значению
От: N. I.  
Дата: 29.05.19 08:58
Оценка:
_NN_:

_NN>Мы тут обсуждаем именно подкапотную работу, а не абстракции языка.

_NN>То, что всё передается по значению по умолчанию это свойства языка и никто с этим не спорит, вопрос будет ли это достаточно эффективным в случае string_view или нет.

В случае, когда функция инлайнится, calling conventions ничего не решают.

В случае, когда вызов функции не инлайнится, следует учитывать не только то, каким способом на низком уровне будут переданы аргументы, но ещё и насколько удобно компилятору будет оптимизировать код после такого вызова. Передача аргумента по const reference никак не защищает его от изменения внутри вызываемой функции, т.к. она легально может применить const_cast (если объект изначально не const) и дальше делать с ним что угодно. Когда же локальный объект куда-то передаётся по значению, отследить, что его не модифицируют, заметно проще.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.