Thread Teile eines Arrays nach Parameterübergabe undef
(5 answers)
Opened by bianca at 2016-06-18 10:42
Guten Tag Allerseits!
Bin gerade sehr zeitraubend gestolpert. Folgender Code in Strawberry Perl 5.18.4: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #!/usr/bin/perl use strict; use warnings; use Data::Dumper; local $Data::Dumper::Purity; $Data::Dumper::Purity = 1; local $Data::Dumper::Useqq; $Data::Dumper::Useqq = 1; local $Data::Dumper::Sortkeys; $Data::Dumper::Sortkeys = sub { my ($hash) = @_; return [(sort {lc $a cmp lc $b} keys %$hash)]; }; use 5.010; my $test = sub { my ($teile) = @_; say Dumper($teile); say "in der sub: ".join('/',@{$teile->[0..scalar(@$teile) - 2]}); }; my @teile = split(/[\\\/]/,'http://www.....'); say "ausserhalb: ".join('/',@teile[0..scalar(@teile) - 2]); $test->(\@teile); wirft: Quote Ganz unabhängig vom Inhaltlichen Sinn und Unsinn trotzdem die Frage: warum ist das leere Array Teil außerhalb leer und nach Übergabe der Referenz auf das Array in eine sub plötzlich undef? Ist das normal und immer so? Warum? Ich ging bisher davon aus, dass sich gerade bei Übergabe einer Referenz der Inhalt nicht ändert. 10 print "Hallo"
20 goto 10 |