Thread absoluter Anfänger: Referenzen (3 answers)
Opened by uchi_mata at 2007-09-01 00:14

uchi_mata
 2007-09-01 00:14
#98948 #98948
User since
2007-09-01
3 Artikel
BenutzerIn
[default_avatar]
Hallo,

bin ein blutiger Perl-Anfänger, und habe direkt ein Problem mit Referenzen, an dem ich schon eine ganze Weile herumbastle. Dazu erstmal ein Stück Code:


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 -w

use strict;
use warnings;

main();

sub main {
my %hash = ();
$hash{'check'} = 'klappt';
test(\%hash);
print "2: $hash{'0'}\n";
}

sub test {
my ($ref) = shift;
my %hash = %$ref;
print "dref: $hash{'check'}\n";
$hash{'0'} = 'klappt nicht';
print "1: $hash{'0'}\n";
}


Ich will im Prinzip nur eine Referenz an eine Funktion übergeben, in dieser den Inhalt verändern, und auf diesen veränderten Inhalt in der aufrufenden Funktion zugreifen.

Allerdings bekomme ich bei diesem Punkt
Code: (dl )
print "2: $hash{'0'}\n";


immer nur ein

Code: (dl )
Use of uninitialized value in concatenation (.) or string at ref.pl line 12.


Ist garantiert trivial, aber ich komme einfach nicht drauf, was falsch ist. Könnte mir das kurz jemand verraten?

Danke schonmal, Gruss,

Matthias

View full thread absoluter Anfänger: Referenzen