Передача по ссылке является вторым способом передачи параметров. В таком случае в метод передается ссылка на аргумент, а не сам аргумент. Следует учитывать, что сама ссылка передается по значению, то есть копируется. Внутри метода эта ссылка используется для доступа к области памяти, в которой хранится аргумент. Такая передача называется передачей «по ссылке», а параметры, переданные посредством ссылки, называются параметрами-переменными или параметрами - ссылками.
В такой ситуации метод работает непосредственно с переменной из вызывающего блока и, следовательно, может ее изменить. Очевидно, что такой параметр подходит для того, чтобы возвращать результат. После того как метод закончил свою работу, он оставляет свой след в виде измененного значения по адресу переменной.
Именно по этой причине использовать параметры-переменные при организации методов необходимо с большой осторожностью, поскольку посредством такого параметра всегда можно непреднамеренно испортить переменную из вызывающего блока. Исходя из сказанного, рекомендуется применять параметр-переменную только в тех случаях, когда действительно необходимо вернуть из метода результат.
Способ передачи параметра по адресу устанавливает программист в заголовке метода следующим образом: имени параметра-ссылки в заголовке метода перед описанием параметра должно предшествовать ключевое слово ref: