Kurso de Raku / Esencoj / Bazoj de funkcioj / Kreado kaj vokado de funkcioj
Defaŭltaj valoroj
Ambaŭ poziciaj kaj nomitaj parametroj povas havi defaŭltajn valorojn. Se la funkcio havas defaŭltan valoron por la donita parametro, tiu parametro povas esti preterlasita kiam oni vokas la funkcion.
Poziciaj parametroj
Ekzemplo de defaŭlta valoro por funkcio kun poziciaj parametroj:
sub greet($name = 'World') {
say "Hello, $name!";
}
greet('Merinda');
greet();La unua voko uzas la nomon pasitan kiel la sola argumento kaj tiel
presas Hello, Merinda!. La dua voko uzas la defaŭltan
valoron kaj presas Hello, World!.
Se funkcio havas pli ol unu parametrojn, tiam la defaŭltaj valoroj povas esti uzataj nur ĉe la fino de la listo de ili:
sub f($a, $b, $c = 42, $d = 50) { . . . } # ĝuste
# sub f($a = 10, $b = 20, $c, $d) { . . . } # MALĜUSTENomitaj parametroj
La sama sintakso estas uzata por agordi defaŭltajn valorojn por nomitaj parametroj:
sub greet(:$name = 'World') {
say "Hello, $name!";
}
greet(name => 'Merinda'); # Hello, Merinda!
greet(); # Hello, World!La ordo de la nomitaj parametroj ne gravas, do iu ajn el ili povas havi defaŭltajn valorojn, eĉ la unua en la listo:
sub greet(:$greeting = 'Hello', :$name) {
say "$greeting, $name!";
}
greet(name => 'Alla'); # Hello, Alla!Praktiko
Vin atendas 2 kvizoj pri la enhavo de ĉi tiu temo.
Kursa navigado
← Kvizo 2 — Variabloj kiel nomitaj parametroj | Kvizo — Difinante defaŭltajn valorojn →
💪 Aŭ iru rekte al la ekzercoj de ĉi tiu
sekcio.