Курс языка программирования Raku / Объекты, ввод-вывод и исключения / Классы и объекты / Атрибуты / Exercises / Счётчик
Решение: Счётчик
Вот один из возможных вариантов решения задачи.
Код
class Counter {
has $.count is rw = 0;
}
my $c = Counter.new;
say $c.count;
$c.count++ for ^5;
say $c.count;🦋 Исходный код можно найти в файле counter.raku.
Вывод
0
5Комментарии
Атрибут объявлен с
is rw, чтобы его аксессор возвращал изменяемый контейнер, а= 0задаёт начальное значение. Первыйsayподтверждает, что только что созданный счётчик действительно начинается с этого значения по умолчанию —0.Поскольку аксессор допускает запись, увеличение с помощью
++работает как ожидается.