Thread Korrekter Code? (7 answers)
Opened by bianca at 2011-04-09 20:28

rosti
 2011-04-09 21:16
#147518 #147518
User since
2011-03-19
3472 Artikel
BenutzerIn
[Homepage]
user image
2011-04-09T19:07:28 bianca
Hi Rolf,
danke für die Ausführungen. Das interessiert mich aber alles nicht und war auch nicht meine Frage.


Schade ;)

Quote
Ich übergebe an die sub eine Referenz auf das Hash des Hauptprogramms. Und die sub soll in einem ganz bestimmten Fall das Hash leer machen. Ich habe festgestellt, dass dies mittels %$test = (); und auch mittels %{$test} = (); möglich ist und auf das selbe raus kommt.
Kann man beide Varianten gleich wählen oder wäre eine von beiden aus bestimmten Gründen vorzuziehen?


Es gibt Fälle, das sind die geschweiften Klammern erforderlich, in Deinem Fall sind sie nicht erfordlerlich.

Erforderlich sind die {} z.B. hier:

Code (perl): (dl )
1
2
  %{$self->{'hier ist ein hash drin'}}; # ok, der Interpreter weiß Bescheid
  %$self->{'hier ist ein hash drin'};   # wrong, gibt Fehlermeldung


Der Grund ist die Dereferenzierung, im zweiten Fall würde der Interpreter meinen, $self wäre der hash, was manchmal, aber nicht immer so ist. Hier also ein bischen aufpassen.

Rolf

View full thread Korrekter Code?