Thread Problem mit der Verwendung von undef
(15 answers)
Opened by crojay at 2011-04-20 11:17 2011-04-20T12:05:36 crojay Du machst im ersten Fall eine doppelte Dereferenzierung. Wenn $hashref eine Referenz auf ein Hash ist, greift man auf dessen Elemente per Dereferenzierung mit -> zu: $value = $hashref->{$key}. Dagegen ist %$hashref das Hash, worauf $hashref zeigt. Das kannst Du eben nicht nochmal dereferenzieren (weil es keine Referenz ist). Wenn Dein 2. Versuch funktioniert, heißt das, Du hast überhaupt nicht mit einer Hashreferenz gearbeitet, sondern mit einem normalen Hash. Referenzen sind am Anfang etwas tricky, aber eigentlich ist das Konzept verstehbar und sehr mächtig. Und wenn Du mal komplexere Datenstrukturen aufbauen willst, kommst Du sowieso nicht dran vorbei. Lies mal perlreftut, perlref und perldsc in der Perl-Doku. Edit: pq war schneller :) Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"
|