Raku-Kurs / Fortgeschritten / Operatoren / Traits und Pragmas / Exercises / Ein beschreibbarer Parameter
Lösung: Ein beschreibbarer Parameter
Hier ist eine mögliche Lösung der Aufgabe.
Code
sub double($n is rw) {
$n *= 2;
}
my $score = 21;
double($score);
say $score;🦋 Den Quellcode finden Sie in der Datei writable-parameter.raku.
Ausgabe
42Kommentare
is rwbindet den Parameter$nan die Variable$scoredes Aufrufers, sodass$n *= 2innerhalb vondouble$scoreselbst ändert — deshalb wird42ausgegeben.Ohne
is rwwäre der Parameter schreibgeschützt und$n *= 2wäre ein Kompilierzeitfehler. Wenn man ihn stattdessen mitis copymarkieren würde, hättedoubleeine private Kopie zum Ändern, und$scorebliebe bei21.
Kursnavigation
← Ein beschreibbarer Parameter | Ein benutzerdefinierter Trait →