Inhalt Perl Einführung: Subroutinen: Parameterübergabe |
Unterroutinen werden erst mit Paramterübergaben interessant. Parameter werden wie folgt übergeben:
&Name_der_Unterroutine(Parameter_1, Parameter_2, usw.);
Wie greift nun die Unterroutine auf die Parameter zu? Die Parameter werden der Routine innerhalb eines speziellen Arrays übergeben, der den schönen namen @_ hat. Das erste Element dieses Arrays ist der erste Parameter also @_[0], das zweite Element der zweite Parameter also @_[1] usw.
Falls Du nicht mehr weißt, was ein Array ist, schaue Dir nocheinmal das Kapitel 3.3 an.
Hier ein Beispiel:
# Hauptroutine print "Geben Sie Ihren Namen ein: "; $name=<STDIN>; &hallo($name); # Unterroutinen sub hallo { print "Hallo @_[0], ich heiße Henning"; }
Das Skript fragt nach Deinem Namen und und ruft die Unterroutine hallo mit der Variablen $name auf. Dies geschieht mit &hallo($name). Der Inhalt der Variablen $name wird in das Array @_ kopiert, auf das die Subroutine zugreift (@_ hat also hier nur ein Element). Der Name wird dann innerhalb der print Anweisung in der Unterroutine als @_[0] ausgegeben.
Perl Einführung: Subroutinen: Parameterübergabe Inhalt |