parser

/faq/faq
/authors/авторы
/docs/документация

/powered_by_parser/в действии
/feedback/куда говорить
/jargon/жаргон

/download/скачать

/examples/примеры
/forum/форум



Поиск по форуму

По умолчанию ключевое слово ищется только в заголовке сообщения.

Ключевое слово:

Фильтровать по автору:



Я обычно обнулаю переменные...

Misha 29.01.2002 12:00

Т.к. очень часто, когда мне приходится потом повторно использовать макросы у меня в переменной может оказаться мусор.

Я придерживаюсь такой логики:
-Если я пишу макрос в документе, то я подразумеваю, что он кроме как из этого документа вызываться ниоткуда не будет, и сильно не напрягаюсь по поводу инициализации переменных.
-Если я пишу макрос в _macro.cfg или ещё где, то я делаю ВСЕ для того, чтобы он сохранял работоспособность при повторных вызовах, при передачи ему разнообразных параметров, для чего обязательно инициализирую переменные И делаю что-то подобное:

@test1[var1;var2]
^var[test1_var1;$var1]
^var[test1_var2;$var2]
^context[test1_ctx;
  ^var[test1_var1], ^var[test1_var2]
]
и в дальнейшем работаю с этими переменными.
Зачем? Я думаю, это понятно из кода, который без этих извращений не будет работать при таком вызове:
^context[result;
  ^macro[test1;^item[name];^item[email]]
]
Для того, чтобы он работал нужно или писАть
^context[result;
  ^macro[test1;^item[result;name];^item[result;email]]
]
что тоже неплохо (на самом деле я при вызовах так-же передаю параметры, взятые из ^item[]), но кто-либо, не знающий или не соблюдающий этого принципа не будет долго ломать голову и матюкать меня, т.к. мой макрос не работает :)

<<  Вернуться к списку сообщений


E-mail: mailbox@parser.ruCopyright © 1997-2001 Студия Артемия Лебедева