.
1С 8.3. Передача параметров по ссылке и по значению
Автор megabax   
15.11.2020 г.
New Page 1

1С 8.3. Передача параметров по ссылке и по значению

Продолжу цикл статей по особенностям программирования 1С. В 1С можно передавать параметры по ссылке и по значению. В чем разница? При передаче параметров по ссылке передается только адрес области памяти, где хранится переменная. Если мы ее изменим внутри функции, то она измениться и во вне.  В случае передачи по значению передается копия переменной, и ее изменения внутри функции никак не влияет на переменную во вне функции. По умолчанию переменная передается по ссылке, это может продемонстрировать следующий код:

&НаКлиенте
Процедура Проба(Команда)
     x=10;
     сообщить("x="+строка(x));
     ПередачаПараметра(x);
     сообщить("x="+строка(x));
КонецПроцедуры

Процедура ПередачаПараметра(пар)
    пар=пар+1;
    сообщить("пар="+строка(пар));
КонецПроцедуры

И вот результат работы этой программы:

1С 8.3. Передача параметров по ссылке и по значению

Для того, чтобы передать параметр не по ссылке, а по значению, в объявлении процедуры или функции перед параметром надо просто поставить знач:

1С 8.3. Передача параметров по ссылке и по значению

 Тогда переменная x уже не будет меняться:

1С 8.3. Передача параметров по ссылке и по значению

 


Скриншоты, опубликованные в данной статье, являются цитатами и иллюстрациями   программного продукта "1C:Предприятие версия 8.2", авторское право на который принадлежит ЗАО 1С..