Thread Konstruktorverständnis
(18 answers)
Opened by leo11 at 2009-06-27 21:01 Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 sub new { my ($caller, %arg) = @_; # $caller <- Paket oder Objekt, %arg <- restliche Argumente my $caller_is_obj = ref($caller); # Aufruf als Objekt- oder als Klassenmethode? my $class = $caller_is_obj || $caller; # Egal ob der Aufruf als Objekt- oder Klassenmethode erfolgte, $class <- Klassenname no strict "refs"; # Erlaube Zugriff auf Paketvariablen der Klasse über symbolische Referenzen my $self = bless [\%{"${class}::FIELDS"}], $class; # Erzeuge eine Arrayreferenz, die als erstes Element eine Referenz auf die Hashvariable FIELDS des Klassenpaketes enthält, und verwandle sie in eine Instanz der Klasse. ... } When C++ is your hammer, every problem looks like your thumb.
|