Mega Code Archive

 
Categories / Perl / Hash
 

Using hash as the hash value

$string = "Here's a string."; @array = (1, 2, 3); %hash = ('fruit' => 'apples', 'vegetable' => 'corn'); sub printem {     print shift; } $complex = {     string         =>   $string,     number         =>   3.1415926,     array          =>   [@array],     hash           =>   {%hash},     arrayreference =>   \@array,     hashreference  =>   \%hash,     sub            =>   \&printem,     anonymoussub   =>   sub {print shift;},     handle         =>   \*STDOUT, }; print $complex->{string}, "\n"; print $complex->{number}, "\n"; print $complex->{array}[0], "\n"; print $complex->{hash}{fruit}, "\n"; print ${$complex->{arrayreference}}[0], "\n"; print ${$complex->{hashreference}}{"fruit"}, "\n"; $complex->{sub}->("Subroutine call.\n"); $complex->{anonymoussub}->("Anonymous subroutine call.\n"); print {$complex->{handle}} "Text printed to a handle.", "\n";