Thread push (2 answers)
Opened by Gast at 2004-05-24 11:06

kabel
 2004-05-24 11:19
#82655 #82655
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
also, @dateiinhalt ist ein AoA (Array of Arrays). dann hat das statement
Code (perl): (dl )
push @{ dateiinhalt[0] }, $whatever;

die bedeutung, dem ertsen Array in @dateiinhalt $whatever hinzuzufügen, und zwar an das ende.

dein beispielstatement macht auch etwas: es macht ein shallow-copy von @tmp_zeile und fügt diese neue referenz ans ende von @dateiinhalt.

Quote
kabel@kabel:~$ perl -MData::Dumper;
@AoA = ([1..4], [5..8]);
print Dumper (\@AoA);
push @AoA, [9];
print Dumper (\@AoA);
push @{ $AoA[0] }, [10];
print Dumper (\@AoA);

$VAR1 = [
[ 1, 2, 3, 4 ],
[ 5, 6, 7, 8 ]
];
$VAR1 = [
[ 1, 2, 3, 4 ],
[ 5, 6, 7, 8 ],
[ 9 ]
];
$VAR1 = [
[ 1, 2, 3, 4, [10]],
[ 5, 6, 7, 8 ],
[ 9 ]
];
kabel@kabel:~$
-- stefan

View full thread push