----- Original Message -----
From: "Craig Moynes/Markham/IBM" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, July 12, 2002 2:48 PM
Subject: anonymous reference problems
> I have a loop, each iteration through the loop the hash %tmpEntry gets a
> new set of values.
> And each iteration through the loop I place this hash into another hash,
> like so:
>
> [snip]
> print "Added entry.\n";
> $oncall{$tmpEntry{'StartDate'}} = \%tmpEntry;
> [snip]
>
> tmpEntry is defined outside the loop, because I need to handle the last
> case outside of the loop.
> This doesn't work, all the entries end up being the same, because of the
If $tmpEntry{'StartDate'} is ever repeated, you will always over write the date that
was in that hash key...
if you are wanting multiple entries for any key, do a push like so:
push @{$oncall{$tmpEntry{'StartDate'}}}, \%tmpEntry;
This will make a referenced array of hashes that you can iterate over...
Shawn
> reference to the memory location.
>
> I need something similar ...I thought about taking each value of tmpEntry
> and setting each variable like so:
> $oncall{$tmpEntry{'StartDate'}}->{x} = $tmpEntry{x};
> $oncall{$tmpEntry{'StartDate'}}->{y} = $tmpEntry{y};
>
> but that seem inelegant at best.
>
> Thoughts ?
>
> -----------------------------------------
> Craig Moynes
> [EMAIL PROTECTED]
>
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]