Thread hash wird gelöscht/überschrieben(foreach und hash): warum wird hash gelöscht?!! (12 answers)
Opened by bamboocha at 2005-05-18 12:22

Ronnie
 2006-08-18 14:16
#33256 #33256
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Wie renee oben schon gezeigt hat überschreibst du so nur den hash jedesmal. Verwende eine Referenz auf den Hash den du an die Funktion übergibst und spar dir die Zuweisung. Ein Beispiel:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!usr/bin/perl

use strict;
use warnings;

use Data::Dumper;

my %hash;
my $i;

fill_hash(\%hash); # add some data
print Dumper \%hash; # dump it
fill_hash(\%hash); # add more data
print Dumper \%hash; # dump it again
exit;

sub fill_hash {
my $hash_ref = shift || {};
$hash_ref->{$i} = ord(++$i) for 1..4;
}

View full thread hash wird gelöscht/überschrieben(foreach und hash): warum wird hash gelöscht?!!