Raku kurss / Padziļināti / Moduļi / Pakotnes un vārdtelpas 🆕 / Exercises / Pakotne
Risinājums: Pakotne
Šeit ir viens no iespējamiem uzdevuma risinājumiem.
Kods
package Temperature {
our $freezing = 0;
our sub fahrenheit($c) { $c * 9/5 + 32 }
}
say $Temperature::freezing;
say Temperature::fahrenheit(100);🦋 Šīs programmas pirmkodu var atrast failā a-package.raku.
Izvade
0
212Komentāri
Gan mainīgais, gan apakšprogramma ir deklarēti ar
our, tāpēc abi kļūst parTemperaturevārdtelpas daļu un ir sasniedzami no ārpuses.Mainīgajam piekļūst kā
$Temperature::freezing— sigils, pakotnes nosaukums, tad mainīgā nosaukums —, savukārt apakšprogrammu izsauc kāTemperature::fahrenheit(100). Pārvēršot100, iegūst100 * 9/5 + 32, kas ir212.Vienkāršs
packagenodrošina tikai vārdtelpu. Atkārtoti lietojamai bibliotēkai mēs būtu izmantojušimodule— un, kad nonākam pie objektiem,class—, bet vārdtelpas mehānisms katrā gadījumā ir vienāds.
Kursa navigācija
← Pakotne | Ligzdots nosaukums →