Kurso de Raku / Progresinta / Pli pri la enkonstruitaj tipoj / Enumeracioj

Difini enumeracion

Deklaru enumeracion per la ŝlosilvorto enum, nomo kaj la listo de konstantaj nomoj:

enum Colour <red green blue>;

Tio kreas novan tipon, Colour, kaj tri konstantojn: red, green kaj blue. Vi povas uzi la konstantojn rekte laŭ nomo:

say red;   # red
say green; # green

Malantaŭ ĉiu nomo estas nombro, atribuita aŭtomate ekde nulo laŭ la ordo, en kiu vi listigis ilin — red estas 0, green estas 1, blue estas 2. Ĉar la valoroj estas ordigitaj, vi povas kompari la konstantojn:

say red < blue; # True

Variablo povas esti tipita per la enumeracio, tiel ke ĝi akceptas nur tiujn konstantojn:

my Colour $c = green;
say $c; # green

Se nomo povus konflikti kun io alia en via programo, vi ĉiam povas referenci konstanton per la nomo de la enumeracio kun :::

say Colour::red; # red

Enumeracio donas al aro de rilataj konstantoj nomon kaj tipon, kio faras kodon uzantan ilin multe pli klara ol nudaj nombroj. La sekva temo rigardas la nombrojn malantaŭ la nomoj.

Praktiko

Vin atendas 1 kvizo pri la enhavo de ĉi tiu temo.

Kursa navigado

Enumeracioj   |   Kvizo — Enumeracioj


💪 Aŭ iru rekte al la ekzercoj de ĉi tiu sekcio.