Kurso de Raku / Progresinta / Moduloj / Pakoj kaj nomspacoj / Exercises / Pako
Solvo: Pako
Jen ebla solvo de la tasko.
Kodo
package Temperature {
our $freezing = 0;
our sub fahrenheit($c) { $c * 9/5 + 32 }
}
say $Temperature::freezing;
say Temperature::fahrenheit(100);🦋 Vi povas trovi la fontkodon en la dosiero a-package.raku.
Eligo
0
212Komentoj
Kaj la variablo kaj la subrutino estas deklaritaj per
our, do ambaŭ fariĝas parto de la nomspacoTemperaturekaj estas atingeblaj de ekstere.La variablo estas atingata kiel
$Temperature::freezing— sigelo, paka nomo, poste variabla nomo — dum la subrutino estas vokata kielTemperature::fahrenheit(100). Konverti100donas100 * 9/5 + 32, kio estas212.Simpla
packageprovizas nur la nomspacon. Por reuzebla biblioteko ni estus uzintajmoduleanstataŭe — kaj, kiam objektoj estas en la ludo,class— sed la nomspaca mekanismo estas la sama en ĉiu kazo.
Kursa navigado
← Pako | Nestita nomo →