Thread pointer auf map<key,value> (2 answers)
Opened by Graf Herschel at 2012-10-02 14:35

Gast Graf Herschel
 2012-10-02 15:20
#162327 #162327
2012-10-02T12:41:09 Linuxer
Du hast einen Hash %dbo und willst auf einzelne (skalare) Werte zugreifen: $dbo{'user'}

Nun gibst Du eine Hash-Referenz an die Sub-Routine: foo( \%dbo )

Innerhalb der Sub hast Du jetzt nur eine Referenz, die auf den Hash verweist; also musst Du dereferenzieren: $hashref->{'user'}. Beachte die Pfeil-Syntax.

Siehe auch http://perldoc.perl.org/perlreftut.html

Angewandt auf Dein konkretes Beispiel:

Code (perl): (dl )
1
2
3
4
5
6
7
sub db_update {
  my $dpoR = shift;            # get hash ref
  my $host = $dpoR->{'host'};
  my $user = $dpoR->{'user'};

  # ...
}


Vielen Dank, so funktioniert es, du bist ein Schatz!
Ich tu mir mit dem Finden wegen meinem Mangel an Wissen ob der Perl typischen Bezeichnungen schwer. Aber das wird sich bessern. Danke euch allen!
Last edited: 2012-10-02 15:34:27 +0200 (CEST)

View full thread pointer auf map<key,value>