The first is usually considered bad form as there is too much copying going on and it will not allow you to pass more than one hash at a time. The second is my preferred method, but it looks like you were going for number 3.
By the way, if you are going to loop over the hash to get both the keys and values, each is typically considered the way to go.#!/usr/bin/perl -w use strict; my %hash; build_hash(\%hash); print "$_ : $hash{$_}\n" foreach(keys %hash); sub build_hash { my $hash_ref = shift; $hash_ref->{'key1'} = "foo"; $hash_ref->{'key2'} = "bar"; }
Cheers - L~R
In reply to Re: Preserving hash structure after subroutine call
by Limbic~Region
in thread Preserving hash structure after subroutine call
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |