Wie initialisiere ich ein 2D-Array in Perl?
Ich versuche den folgenden Code:
%Vor%aber es gibt den folgenden Fehler:
String ("1") kann nicht als ARRAY ref verwendet werden, während "strict refs" in ./dyn_pf.pl Zeile 20 verwendet wird.
Diese Syntax scheint nur ein 1D Array zu initialisieren, da print "$ frame_events [1] \ n" funktioniert. Obwohl Perl während der Zuweisung keinen Fehler gibt.
Sie können kein Array von Arrays in Perl haben, sondern nur ein Array von Referenzen auf Arrays.
%Vor%Sonderfall: Sie können den Pfeil zur Dereferenzierung des Zeigers zwischen benachbarten Klammern (egal ob quadratisch oder lockig) weglassen:
%Vor%Im Allgemeinen können Sie nicht haben:
Sie können Folgendes haben:
Sie können auch:
In Perl wird ein Array mit zwei Arrays in ein Array zusammengeführt. Sie möchten Referenzen für die internen Arrays, wenn Sie nicht verkettet werden wollen. Hier ist ein Dump deines Codes:
%Vor%Ergebnis:
%Vor%und wenn Sie zu Array-Referenz-Ersteller, Klammern statt Eltern, mit diesem Code wechseln:
%Vor%Du bekommst das:
%Vor%