You are deleting the data refered to by $HashData (and in an unidiomatic way: better to say %$HashData = () if you really want that -- but you don't), and are then populating it with a copy of whatever was (refered to) in $value. Why? If $value has the correct data, why doesn't DeleteValueTreeWithinHash() simply return it? Oh, you want an IN/OUT function? Fine, then why doesn't RecursiveFunctionToDeleteValueWithinHash() really do what it name claims and modify the data referenced by its argument?%{$HashData} = undef; %{$HashData} = %{$value};
Do yourself a favor and read perlref (or perlreftut) carefully.
In reply to Re: Problems With Hash Pointer Assignments
by gaal
in thread Problems With Hash Pointer Assignments
by EchoAngel
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |