Perl: Array-Referenz im Vergleich zu anonymen Arrays

Dies kann eine dumme Frage sein ... Der folgende Code gibt den Inhalt von aus@arrayref und@arraycont beziehungsweise. Beachten Sie den Unterschied zwischen ihnen und die Art und Weise, wie die Werte von ihnen zugewiesen werden. Ich weiß, was das anonyme Array tut, aber kann jemand erklären, warum es einen Unterschied gibt?

Vielen Dank.

<code>@arrayref = ();
@array = qw(1 2 3 4);
$arrayref[0] = \@array;
@array = qw(5 6 7 8);
$arrayref[1] = \@array;
print join "\t", @{$arrayref[0]}, "\n";
print join "\t", @{$arrayref[1]}, "\n";

@arraycont = ();
@array = qw(1 2 3 4);
$arraycont[0] = [@array];
@array = qw(5 6 7 8);
$arraycont[1] = [@array];
print join "\t", @{$arraycont[0]}, "\n";
print join "\t", @{$arraycont[1]}, "\n";
</code>

Ausgänge

<code>5   6   7   8   
5   6   7   8   
1   2   3   4   
5   6   7   8   
</code>

Antworten auf die Frage(3)

Ihre Antwort auf die Frage