Wenn ich folgendes mache:
for my $i (0..12) {
@{"ITEM$i"} = @array_alt;
...}
Ich versteh nach wie vor nicht warum.
Was stört dich an $ITEM[$i]?
funktioniert das auch, bis auf das das ich in dem Array (alt) in jedem Listenelement wiederum einen Hash habe....z.B. mit der Nummer HASH(0x8dec31c).....
dies bedeutet, dass in @ITEM0, @ITEM1, etc. immer derselbe HASH-Speicherplatz steht und wenn ich dann den HASH im Array manipuliere, dann ändert er es in jedem anderen ARRAY auch...
Logisch, wenn du referenzen kopierst und diese änderst ändert sich auch das Orginal. Das ist der Sinn und Zweck von Referenzen.
Wie kann ich also nun den Speicherplatz ändern....
Das willst du nicht, du willst ein Kopie anlegen. Je nach Datentyp unterschiedlich. Entweder
ARRAY: @{ $ref }
HASH: %{ $ref }
Struppi.