|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 03 Nov 2004 19:49:07 To : Alexander Pashchenko Subject : Re: А есть ли в эхотаге рекурсия? -------------------------------------------------------------------------------- Alexander Pashchenko -> Artem Chuprina @ Tue, 02 Nov 2004 22:38:00 +0300: AC>> В современных перлах можно сказать open(my $f, ...). Будет работать AP> А "современные перлы" это какие версии? Hачиная с 5.6. AC>> Даже close не потребуется. AP> Хорошая привычка закрывать файлы :) Да и переменные отдельным AP> блоком объявлять. AP>>> Кстати, а большая ли разница между my и local? AC>> Принципиальная. AP> Да я понимаю, что принципиальная. Что-то связанное с видимостью: вроде как AP> local - текущий блок и ниже, а my - только текущий блок. Так? Гораздо хуже. Лучше, конечно, почитать в какой-нибудь умной книжке. Hо. my-переменная видна только в этом блоке _и в определенных в нем функциях_ (это отдельная довольно сложная для человека, задающего подобные вопросы, тема), зато время жизнии ее значения не ограничено. local - это глобальная переменная, которая имеет указанное значение на время выполнения данного блока. Т.е. она видна всегда, а ее данное значение живет до выхода из этого блока, потом замещается внешним (для случая рекурсии - там стек значений). -- Artem Chuprina RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757 --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/256063ee97204.html, оценка из 5, голосов 10
|