Thread Perl +OOP (26 answers)
Opened by [HR]Doomrunner at 2003-10-01 14:23

pq
 2003-10-23 14:14
#59461 #59461
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=Strat,23.10.2003, 11:55]wuerde ich schreiben als:
Code: (dl )
1
2
3
4
5
6
sub new {
 my $class = shift;
 my $referenz = {};
 bless($referenz,$class);
 return($referenz);
}

denn der erste Parameter ist die Klasse (genauer gesagt: das Package), und das Objekt wird erst durch bless erzeugt
[/quote]
der erste parameter kann durchaus ein objekt sein! (dann würde man aber
nicht bless() damit aufrufen, sondern erst ref()). klassisch ist das hier:
Code: (dl )
1
2
3
4
5
6
sub new {
 my $proto = shift;
 my $class = ref $proto || $proto;
 my $referenz = {};
 bless($referenz,$class); # das return kann hier auch wegbleiben
}
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Perl +OOP