|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Dmitry Grebeniuk 2:469/105 07 Jul 2003 15:01:04 To : All Subject : объекты. торможу слегка. -------------------------------------------------------------------------------- Hе работал с объектами в перле, поэтому возникают вопросы. В man perltoot советуют делать конструктор наподобие такого: sub new { my $proto = shift; my $class = ref($proto) || $proto; my $self = {}; $self->{NAME} = undef; $self->{AGE} = undef; $self->{PEERS} = []; bless ($self, $class); return $self; } объясняя это какими-то нюансами с наследованием. Hо мне хотелось бы, чтобы конструктор вызывался так: my $reader = Filereader::new("filename"); (пример совершенно условен) Если же следовать вышенаписанному (цитате из man perltoot), то в $proto попадает "filename". Конечно, я могу сделать как-то по-другому - не записывать первый аргумент в $proto, например, или делать my $reader = Filereader::new(); $reader->open("filename"), но даже не знаю, как будет идеологически правильнее. Хотелось бы передавать параметр именно конструктору, а не отдельному методу. Так красивее, мне кажется. bye --- GoldED+/LNX 1.1.5 * Origin: gds/FH (2:469/105) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/18413f09647b.html, оценка из 5, голосов 10
|