2013/11/19 Denis Ibaev <[email protected]> > Привет. > > > perl -E 'use strictures; my $v; say(%$v);' > Can't use an undefined value as a HASH reference at -e line 1. > > > perl -E 'use strictures; my $v; say(keys(%$v), "ok");' > ok > > Почему разыменование переменной со значением undef в хеш не вызывает > ошибки с случае keys() и values()? > > Видимо, keys и пр. автовивифицируют $v:
perl -Mstrict -E 'my $v; say "keys: ", keys %$v; say "v: ", $v' keys: v: HASH(0x96bde8) > perl -v > This is perl 5, version 14, subversion 2 (v5.14.2) built for > x86_64-linux-gnu-thread-multi > > -- > Денис Ибаев > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- Best regards, Ilya Chesnokov
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
