in reply to Re: accessing element of array of arrays
in thread accessing element of array of arrays

Yeah, so a reference is being assigned to @AoA2, which is why it's changing @AoA1 when edited. I still don't know how to dereference the value in @AoA1 before assigning it to @AoA2 (it's a scalar). When I tried ${$AoA1[0][1]} it said: "Can't use string ("1") as a SCALAR ref while "strict refs" in use." String ("1") is the scalar value at @AoA1[0][1]).

Replies are listed 'Best First'.
Re^3: accessing element of array of arrays
by jethro (Monsignor) on Jul 06, 2008 at 14:33 UTC
    How can you dereference the value in $AoA1[0][1] when $AoA1[0][1] is obviously a scalar (with the value of 1 it seems) ?

    You can only dereference a reference. '1' is not a reference

    Please post more of your code. Language is always ambiguous, code (mostly) not.For example your statement "a reference is being assigned to @AoA2" is ambiguous at least and if taken at face value definitly not what you want. @AoA2= \$x; is equivalent to @AoA2= (); $AoA1[0]= \$x;. Makes no sense, right?

    Also you might use Data::Dumper to get a clear picture of the data you are operating on (really Data::Dumper is the most often mentioned module on PerlMonks, and that's justified).

Re^3: accessing element of array of arrays
by linuxer (Curate) on Jul 06, 2008 at 12:09 UTC

    What about:

    $AoA2[0] = [ @{ $AoA1[0] } ];

    Dereference first element of @AoA1 as an array; create a new reference to an anonymous array containing the result of the dereferenced array, and assign that new reference as first element of @AoA2.