|
v7: А Вы помните про передачу параметров по ссылке и рекурсию?
| ☑ |
0
slowpoke1C
28.08.18
✎
15:40
|
Забавно, я занимался всякой ерундой, и тут получил тестовое задание по семёрке. В процессе решения задания вспомнил, что объекты "Запрос" и "Таблица" вполне можно передать в процедуру, это будут ссылки на существующий объект. И можно написать подобное:
[Code]
ТекстЗапр = "...";
Запр = СоздатьОбъект("Запрос");
Если Запрос.Выполнить() = 0 Тогда Возврат; КонецЕсли;
Табл = СоздатьОбъект("Таблица");
Табл.ВывестиСекцию("Шапка");
ТекущийУровень = 1;
ПроцедураВыводаУровня(Запр, Табл, ТекущийУровень);
//... а где-то рядом:
Процедура ПроцедураВыводаУровня(Зап, Таб, Ур)
//Выводим текущий уровень
// а потом - следующий
ПроцедураВыводаУровня(Зап, Таб, Ур + 1);
КонецПроцедуры
[/Code]
Собственно вопрос: А вы помните особенности клюшек?
|
|
1
2S
28.08.18
✎
15:43
|
Никаких особенностей, вызывай саму себя до условия
|
|
2
vde69
28.08.18
✎
15:44
|
а при чем тут клюшки....
это работает и в восьмерке и в дельфи и еще куча где
|
|
3
slowpoke1C
28.08.18
✎
15:49
|
(2) Не, не. Я знаю про рекурсию, но забыл, что в клюшках параметры передаются по ссылке, а не копируются.
|
|
4
vde69
28.08.18
✎
15:56
|
(3) в клюшакх передаются и по ссылкам и по значению
фун(знач а)
при передачи в нее простых данных будет передача по значению, при передачи ТЗ будет передача по ссылке вне зависимости от указания "знач",
гдето есть статья на эту тему...
|
|
5
Sserj
28.08.18
✎
15:58
|
(3) Всмысле в "клюшках"?
Практически во всех языках объекты передаются по ссылке. Примитивные часто по значению но в слаботипизированных средах как таковых примитивов нет, это тоже неявные объекты.
|
|
6
slowpoke1C
28.08.18
✎
15:59
|
(4) Ага.
Два "Тархуна" этому господину!
|
|
7
Злопчинский
28.08.18
✎
16:40
|
(0) Кури почаще типовой код торговли. ьтам вовсю рекурсивная ВывестиИтоги при построении отчетов
|
|