Thread Mehrdimensionale Arrays (22 answers)
Opened by der_thomas at 2013-09-27 22:49

Raubtier
 2013-09-27 23:24
#170731 #170731
User since
2012-05-04
1054 Artikel
BenutzerIn

user image
Geht sicher einfacher.
Perldoc:perllol ist dein Freund :-)

Das hier:
Quote
Code (perl): (dl )
1
2
3
4
my @daten0 = qw[Blume Baum Pilz Rose Obst Gemüse];
my @daten1 = qw[1 2 3 4 5 6];
my $ref0 = \@daten0;
my $ref1 = \@daten1;


geht einfacher:
Code (perl): (dl )
1
2
3
my $ref0 = [qw(Blume Baum Pilz Rose Obst Gemüse)];
my $ref1 = [qw[1 2 3 4 5 6]];
my $ref2 = [1, 2, 3];


Eckige Klammern machen eine anonyme Referenz. (Welche Klammern mit dem qw benutzt werden, ist dagegen egal - es müssen nicht einmal Klammern sein).

Genauso kannst du die Matrix bauen:
Code (perl): (dl )
1
2
3
my @matrix = ($ref0, $ref1);
# oder
my $matrixref = [$ref0, $ref1];


Es geht dann auch
Code (perl): (dl )
1
2
push @matrix, $ref2;
push @matrix, ["hier ist", "eine", "neue", "ref"];


Beim Zugriff bietet sich die Pfeil-Schreibweise an (das sieht bei dir irgendwie kompliziert aus):
Code (perl): (dl )
1
2
print "Element: ", $matrix[1]->[0];
print "oder kürzer: ", $matrix[1][0];

View full thread Mehrdimensionale Arrays