Thread übergabe eines hash an sub (6 answers)
Opened by d4mi4n at 2005-11-19 02:18

betterworld
 2005-11-19 16:04
#60252 #60252
User since
2003-08-21
2613 articles
ModeratorIn

user image
[quote=Dubu,19.11.2005, 13:27]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;

sub foo(%) {
my %hash = @_;

return Dumper \%hash;
}


my %bar = ( eins => 1, zwei => 2 );

my $baz = foo(%bar);
print $baz;
_ _END_ _
$VAR1 = {
'eins' => 1,
'zwei' => 2
};
[/quote]
Wobei man ja sagen muss, dass der Prototyp hierbei gar nicht notwendig ist. Man könnte es auch ohne schreiben:
Code: (dl )
1
2
3
4
5
sub foo{
my %hash = @_;

return Dumper \%hash;
}

Nur ist das alles nicht so gut wie Referenz-Uebergabe, weil es nicht so effizient ist. Denn die Daten des Hashes werden kopiert und durch die Gegend geschaufelt.

View full thread übergabe eines hash an sub