Hello demichi,
I agree with LanX, readability is the key here. Consider the following, which all print MyTextWilmaishere.:
#! perl use strict; use warnings; my $ref_HoH = { Fred => { wife => 'Wilma', daughter => 'Pebbles', }, Barney => { wife => 'Betty', son => 'Bamm-Bamm', }, }; my $var = 'Fred'; my $key = 'wife'; print "MyText$ref_HoH->{$var}{$key}ishere.\n"; # interpol +ated print "MyText$$ref_HoH{$var}{$key}ishere.\n"; # interpol +ated print "MyText" . $ref_HoH->{$var}{$key} . "ishere.\n"; # concaten +ated print "MyText" . $$ref_HoH{$var}{$key} . "ishere.\n"; # concaten +ated printf "MyText%sishere.\n", $ref_HoH->{$var}{$key}; # template +d printf "MyText%sishere.\n", $$ref_HoH{$var}{$key}; # template +d
My preference is for printf, which presents the complete structure of the output up-front, in the format string; but concatenation is always a valid option; and either option is clearer, and therefore more maintainable, than the equivalent interpolation.
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Dereference Hash of Hash - print
by Athanasius
in thread Dereference Hash of Hash - print
by demichi
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |