Hallo Frédéric,
Ich habe gerade erfahren, dass man beim Aufruf von
Subroutinen den "&" vorne gar nicht braucht.
Das & vor Subroutinen ist veraltete Perl4-Schreibweise.
Da drängt sich halt schon die Frage, was der Unterschied
ist. Vieleicht gibt es kar keinen.
Doch, den gibt es. Ruft man
'&routine;' auf, wird das aktuelle @_ (was immer auch drin
sein mag) als Argumentenliste uebergeben. Mit '&routine();'
bzw. '&routine(argumentenliste);' wird @_ korrekt gesetzt,
ebenso bei 'routine;' und 'routine();'.
- subroutine()
- subroutine (Darf man nicht, oder??)
Beide Schreibweisen sind erlaubt (bei 4 muss nur die
Subroutine vorher schon bekannt sein) und sinnvoll. Das & ist
veraltet und gefaehrlich, da es Nebeneffekte hat, die man uU.
nicht sofort sieht.
Gruesse,
CK