Chris_07: Hash an Funktion übergeben

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 {

???
}

  1. 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

  2. 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

  3. Wie kann ich auf eine Hash Referenz in einer Funktion zugreifen.

    Siehe perlreftut und perlref.

    Siechfred

    --
    Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.