[Moscow.pm] function ref
Dmitry Karpich
meettya на gmail.com
Чт Дек 29 03:03:09 PST 2011
Потому что
my $ref_sub1=sub {print 'By '. $_[0] };
sub temop_sub{ print 'Hi '. $_[0] };
my $ref_sub=\&temop_sub; # !!!!! ссылка на sub а не ссылка на ее результат
$ref_sub->(); # так - лучше всего
&{$ref_sub1};
Михаил, у вас же есть подписанная Larry книга, почитайте ее :)
Митяй
On Dec 29, 2011, at 12:48 PM, Nikolay Mishin wrote:
> Hi MoscowPM
>
> my $ref_sub1=sub {print 'By '. $_[0] };
> sub temop_sub{ print 'Hi '. $_[0] };
> my $ref_sub=\&temop_sub();
> $$ref_sub;
> &$ref_sub;
> Not a CODE reference at 11_sub_ref.pl line 5.
> &{$ref_sub1};
>
> почему так?
> почему я не могу вызывать именованную процедуру
> &{$ref_sub1}; ??
> ведь вызывать ссылку на код с помощью
> & - лучше, чем с помощью $
> здесь явно показывается, что вызывается процедура
>
> Спасибо.
> --
> Nikolay Mishin
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
Подробная информация о списке рассылки Moscow-pm