Raku-Kurs / Fortgeschritten / Subroutinen / Mehrfach-Dispatch

Quiz — Dispatch mit where

Was gibt das folgende Programm aus?

multi sub f(Int $n where $n %% 2) { say 'even' }
multi sub f(Int $n)               { say 'odd' }

f(4);
1even
0odd
0both
0nothing

4 erfüllt die Bedingung where $n %% 2, daher wird der spezifischere Kandidat gewählt und even ausgegeben. Der einfache Int-Kandidat ist der Auffangfall für alles, was die Bedingung nicht erfüllt.

Kursnavigation

Lösung: Die Größe klassifizieren   |   Mehr zu MAIN-Unterprogrammen