use strict; my %h = ("foo" => 1, "bar" => 2); my %g = (); $g{\%h} = \%h; my @k = keys %g; my $hashref = $k[0]; my %tmp = %{$g{$hashref}}; print $tmp{"foo"} #### use strict; my %h = ("foo" => 1, "bar" => 2); push (my @g,\%h); my $hashref = $g[0]; print $hashref->{foo};