Курс по Raku / Напреднали / Дебъгване / Отстраняване на грешки с dd

Извеждане на променливи

Извикайте dd, за да видите какво съдържа една променлива, по подобие на say:

my $var = 42;
dd $var;

Заедно със стойността, dd показва и името на променливата:

$var = 42

Ако променливата има деклариран тип, типът също се показва. Сравнете изхода на следната програма с предишната:

my Int $var = 42;
dd $var;
Int $var = 42

Това е основната разлика от say: едно извикване на dd върху скалар ви показва името и, когато е известен, типа на данните — така че можете да поставите няколко извиквания на dd в програмата и все пак да разпознаете кой изход принадлежи на коя променлива.

Можете също да извеждате по-сложни структури от данни, като масиви или хешове. В този случай dd отпечатва кодоподобно представяне на стойността:

my @arr = 10, 20, [1, 2, 3], 30;
dd @arr;
[10, 20, [1, 2, 3], 30]

Забележете, че вложеният масив остава ясно видим (без отпечатване на име на променлива обаче). Същото работи за хешове, чиито ключове dd отпечатва в сортиран ред:

my %hash =
    gamma => 'g',
    alpha => 'a',
    beta  => 'b';
dd %hash;
{:alpha("a"), :beta("b"), :gamma("g")}

Практика

Направете 1 тест върху съдържанието на тази тема.

Навигация в курса

Отстраняване на грешки с dd   |   Тест — Четене на dd изход


💪 Или преминете направо към упражненията в този раздел.