Kurso de Raku / Aldono 🆕 / Tipoj kaj tekstmaŝinoj / Objektoj kaj klasoj / Exercises / Klaso por stako
Solvo: Klaso por stako
Jen ebla solvo de la tasko.
Kodo
class Stack {
has @!items;
method push($x) { @!items.push($x) }
method pop { @!items.pop }
method peek { @!items.tail }
method size { @!items.elems }
}
my $stack = Stack.new;
$stack.push($_) for 1, 2, 3;
say $stack.peek;
say $stack.pop;
say $stack.size;🦋 Vi povas trovi la fontkodon en la dosiero stack.raku.
Eligo
3
3
2Komentoj
@!itemsestas privata atributo — la tvigilo!signifas, ke ĝi atingeblas nur el ene de la klaso, kio estas ĝuste tio, kio la konservejo de stako devus esti.peekuzas.tailpor rigardi la lastan elementon sen forpreni ĝin, dumpopefektive forprenas ĝin, do la grando falas de3al2.
Kursa navigado
← Klaso por stako | Banka konto →