Параметр (программирование): различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 39:
 
=== Передача параметра по ссылке ===
Передача параметра по ссылке означает что '''копируется''' не само значение, а '''адрес''' исходной [[Переменная|переменной]] (как в случае передачи параметра по адресу), однако синтаксис используется такой, чтобы программисту не приходилось использовать операцию [[разыменование|разыменования]] и он мог иметь дело непосредственно со значением, хранящимся по этому адресу (как в случае передачи параметра по значению).
 
Передача по ссылке позволяет избежать копирования всей информации, описывающей состояние [[объект]]а (а это может быть существенно больше чем sizeof(int)) и является необходимой для [[Конструктор (программирование)#Конструктор копирования|конструктора копирования]].
Строка 45:
Если функция возвращает значение по ссылке (например, в виде «return *this;»), то её вызов можно использовать слева от оператора присваивания (смотри также [[L-выражение]]).
 
В случае, если передача по ссылке используется именно как средство увеличения быстродействия, но изменение параметра нежелательно, можно использовать передачу по ссылке константного объекта.
 
Таким образом можно ожидать, что примерная программа напечатает (если закомментировать ошибочную строку) «0010 022 233 333».