Имя: Пароль:
1C
1С v8
v8: Методический вопрос по передаче параметров в функцию и их возврат.
0 Doomer
 
06.09.11
09:11
1. Правильный вариант №1 56% (5)
2. Правильный вариант №2 44% (4)
Всего мнений: 9

Часто встречаю в типовых такой код:
Перем а;
ЗаполнитьЗначение(а);
Б=а[0];

Я же привык к такому коду:

а=ЗаполнитьЗначение();
Б=а[0];

Т.е. в типовых часто в процедуру передают переменную с которой идет работа внутри этой процедуры. По окончании работы процедуры используется изменная переменная.
Я же привык (по моему так и учили) что нужно стремиться чтобы функции и процедуры были автономны и для возврата параметра лучше использовать функции.
Так как правильно?
22 VVi3ard
 
06.09.11
09:44
Функция должна возвращать результат своей работы на то она и Функция.
Согласен с (17) если нужно тебе передать ошибку из функции наверх генерируй исключение.

Если функция должна возвратить несколько значений они должны быть упакованы в структуру или иной подходящий объект.

Если вам нужно изменить переданные параметры то используйте процедуру и называйте её понятно

Правильный вариант №2
26 izekia
 
06.09.11
09:51
второй вариант немного оптимальнее, особенно если функция вызывается часто

Правильный вариант №2
127 Александр_
Тверь
 
06.09.11
11:38
К чему огород городить?

Правильный вариант №2
157 mirosh
 
06.09.11
12:12
мне нравится второй вариант, т.к. он более явный. если нужно вернуть несколько значений, можно вернуть структуру.

Правильный вариант №2
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.