|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Artem Chuprina 2:5020/371.32 14 Aug 2000 12:04:23 To : perl@ustinov.tstu.ru Subject : Re: ref to hash -------------------------------------------------------------------------------- putr> Тут возник такой вопросик: как правильно использовать ссылку на хеш. А putr> именно вот этот код работает в принципе правильно (т.е. выдает то что putr> нужно) но без use strict. Если добавить этот пресловутый strict, то putr> %second не формируется (что странно - ошибка при этом не выдается). putr> Итак, оставляю вас наедине с кодом: putr> -------------- cut here ----------------- putr> use strict # при добавлении етого зверя вторая часть скрипта перестает putr> выводиться (ошибка не выбается) putr> use vars qw /%first $ref %second/; use vars qw /%first $ref/; putr> %first=('one','roman','second','ivan'); putr> while (my ($k,$v)=each%first) { putr> print "$k -- $v<br>"; putr> } putr> $ref='second'; Это удалить putr> %$ref=%first; # а вот здесь мне эту ссылочку на хеш и поставить бы (КАК putr> БЫ ЭТО ПРАВИЛЬHО СДЕЛАТЬ?) $ref = \%first; putr> while (my ($k,$v)=each%second) { while (my($k,$v)=each %$ref) { putr> print "$k -- $v<br>"; # если есть стрикт - не выводиться, без него все ОК putr> } putr> -------------- cut here ----------------- putr> Заодно спрошу, что за зверь такой strict и нужен ли он вообще, а то putr> может ну его на .... Если спрашиваешь - значит, _тебе_ нужен. Иногда имеет смысл сказать no strict, но только хорошо знаешь, что именно ты тем самым делаешь. А смысл этой прагмы изложен в perldoc strict, очевидно. -- Счастливо! Ран. --- ifmail v.2.14.os-p7-tma3 * Origin: MemoNet (2:5020/371.32@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/3473999d3f54.html, оценка из 5, голосов 10
|