Thread Fragen zu Hashs
(4 answers)
Opened by panni at 2015-07-01 10:43
Ein Hash wie %hash expandiert bei der Parameterübergabe nach (Name1,Wert1,Key2,Wert2)
subroutine($a, $b, %hash) wird zu subroutine($a, $b, (Name1,Wert1,Key2,Wert2); Wenn du dann in der Subroutine dann my $param1 = shift; my $param2 = shift; my %hash = @_; einliest, wird dem %hash dann der Rest der Liste zugewiesen. subroutine(%hash, $a, $b, %hash) wird zu subroutine((Name1,Wert1,Key2,Wert2),$a, $b); Wenn du dann in der Subroutine dann my $param1 = shift; my $param2 = shift; my %hash = @_; einliest, klappt sowas nicht mehr. Wenn du Arrays oder Hashes übergeben willst, dann nur über eine Referenz, die dann aber in der Subroutine dann auflösen musst. Ich hoffe ich konnet es irgendwie erklären. |