Ich möchte ein mehrdimensionales Array @a
in ein Array klonen @b
.
Ich habe den intuitivsten Weg eingeschlagen und mir Folgendes ausgedacht:
my @a = [0, 0, 0], [0, 0, 0], [0, 0, 0];
my @b = @a.clone;
@a[0][1] = 1;
@b[1][0] = 1;
say '@a : ' ~ @a.gist;
say '@b : ' ~ @b.gist;
und der Ausdruck ist:
@a : [[0 1 0] [1 0 0] [0 0 0]]
@b : [[0 1 0] [1 0 0] [0 0 0]]
Das heißt, dass die beiden Arrays @a und @b gebunden sind?
Fragen:
- Warum Array @a an Array @b gebunden ist (Was ist der Zweck der Klonmethode in dieser Situation? Wir wissen, dass sich Klone so verhalten, wie es für eindimensionale Arrays beabsichtigt ist).
- Wie kann ich @a wirklich zu @b klonen (mehrdimensional)?
- Welches ist der effizienteste (zeitlich begrenzte) Weg, dies zu tun?