Hash an Funktion übergeben
Chris_07
- perl
Hallo,
ich bin gerade am verzweifeln. Wie kann ich auf eine Hash Referenz in einer Funktion zugreifen.
Schon mal danke für die Hilfe
Tom
--------------------------------------------
%dictionary=(
Katze => 'cat',
Hund => 'dog',
);
translate(%dictionary);
sub translate {
???
}
gudn tach!
ich bin gerade am verzweifeln. Wie kann ich auf eine Hash Referenz in einer Funktion zugreifen.
google perl hash reference fuehrte mich im nu zu
http://www.cs.mcgill.ca/~abatko/computers/programming/perl/howto/hash/
hilft das nicht weiter?
ansonsten:
translate(\%dictionary);
sub translate {
my $hr = shift; # \%dictionary ist ein skalar
# auf %$hr kann man nun wie auf %discionary zugreifen
}
prost
seth
moin,
das hier:?
use vars qw(%function);
Deklaration der Funktion als hash Value:
$function{'funktionsname'}=sub{
# @argumente = @_;
# statements
};
Wichtig ist das abschließende *;* Semikolon!
Aufruf einer in einem hash definierten Funktion:
# vorherige Prüfung ob die Funktion definiert ist
if(exists $function{'funktionsname'}){
$function{'funktionsname'}(@parameterliste);
}
roro
Wie kann ich auf eine Hash Referenz in einer Funktion zugreifen.
Siehe perlreftut und perlref.
Siechfred