Thread Hashref deref
(15 answers)
Opened by Froschpopo at 2007-11-08 21:17
$self->init($self, @_); willst du so wohl nicht haben.
$self->init(); (ohne Parameter) übergibt der init()-Funktion $self als ersten Parameter. Immer wenn du eine Methode (=Funktion einer Klasse) über ein Objekt aufrufst erhälst du das aufrufende Objekt als ersten Parameter. mit my $self = shift; nimmst du dieses Objekt dann aus dieser Liste heraus. Da shift; das Element aus der Argumentliste entfernt bleiben nur noch die Parameter übrig. Leider übergibst du $self zweimal. Einmal durch '$self->' und einmal als Bestandteil der Parameterliste '($self, @_)'. Wirf daher mal das $self aus der Parameterliste raus und schau was passiert (und sieh es dir auch mit dem Dumper an): http://www.intergastro-service.de (mein erstes CMS :) )
|