http://www.perlmonks.org?node_id=1032075


in reply to help with references

$h{2} isn't a reference to $h{1}. $h{2} is a reference to the same array that $h{1} refers to.

I think you probably want:

for my $i ( 1 .. 2 ) { my @new = @a; # copy of @a $h{"$i"} = \@new; # reference the copy }

Or (more concise way of saying the same thing)...

for my $i ( 1 .. 2 ) { $h{"$i"} = [@a]; }
package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name

Replies are listed 'Best First'.
Re^2: help with references
by dw_perlmonks (Novice) on May 04, 2013 at 20:09 UTC
    tobyink, thanks for replying. But what I was expecting is different. I've updated my post with more info.