Да, спасибо! Правильно заметили "sub \&subroutine_name" --- бредовая опечатка.
--> Какая разница use overload '""' => ‘to_string’ или use overload '""' => \&to_string ? use overload '""' => \&subroutine_name -- будет вызыать функция из текущей области видимости по ссылке. use overload '""' => 'subroutine_name' -- будет какждый раз вызывать функцию по имени, что и решает троблему топика (как и вызов функцию по имени на $self). 28 мая 2014 г., 16:18 пользователь Роман Юсуфханов <[email protected]>написал: > Какая разница use overload '""' => ‘to_string’ или use overload '""' => > \&to_string ? > В любом случае была ошибка в примере > use overload '""' => sub \&to_string; # Illegal declaration of anonymous > subroutine > Автор? > 28 мая 2014 г., в 15:42, Ilya Chesnokov <[email protected]> > написал(а): > > 28 мая 2014 г., 15:38 пользователь Андрей Фёдоров > <[email protected]> написал: > > Передать строку > > use overload '""' => 'to_string'; > > > Точно... И вообще, perldoc overload ;) > > > 28 мая 2014 г., 15:37 пользователь Ilya Chesnokov < > [email protected]> > написал: > > 28 мая 2014 г., 15:32 пользователь Харпалёв Иван > <[email protected]> написал: > > package Parent; > use overload '""' => sub \&to_string; > sub to_string {...} > > package Heir; > use base 'Parent'; > sub to_string; > > package main; > print Heir->new(); #будет вызвана Parent::to_string, а не > Heir::to_string > > > Что же делать?? (чтобы в родителе определять overload, а подменяя методы > в > наследнике изменять поведение перегруженных операторов). > > > Ну ты как бы явно даешь ссылку на функцию to_string() родительского > пакета. > Что, если сделать так: > > use overload "" => sub { $_[0]->to_string() }; > > > > > С уважением > Иван Харпалев > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > > > > -- > Best regards, > Ilya Chesnokov > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > > > > -- > Best regards, > Ilya Chesnokov > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > >
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
