Corso di Raku / Avanzato / Contenitori / Contenitori ordinati / Exercises / Legare uno scalare

Soluzione: Legare uno scalare

Ecco una possibile soluzione del compito.

Codice

my $source = 1;
my $bound := $source;
my $copy = $source;

$source = 9;
say $bound;
say $copy;

🦋 Puoi trovare il codice sorgente nel file bind-a-scalar.raku.

Output

9
1

Commenti

  1. Il binding con := fa di $bound un altro nome per lo stesso contenitore di $source, piuttosto che una copia. Quindi modificare $source è visibile attraverso $bound, che stampa 9.

  2. L’assegnazione ordinaria con = copia il valore in un contenitore separato, quindi $copy non è influenzato dalla modifica successiva e stampa ancora 1.

  3. Vedere i due affiancati è proprio il punto: := condivide un contenitore, = duplica il valore.

Legare uno scalare   |   Contesti