perlquestion
modred
The following psuedo-code illustrates something I have just recently
run into when relying on $_.
<P>
<CODE>
while(<FILE>)
{
if(/matches/) # use of $_, everything is ok
{
$object->doSomething($part_of_line);
}
print "$_\n"; # here $_ has a value of undef and causes problems
}
</CODE>
<P>
and from the object module
<P><CODE>
sub doSomething
{
...
open(FILE2, $file2);
while(<FILE2>)
{
# do more stuff
}
# At this point in the code, $_ is undef and since $_ is
# global...
}
</CODE>
<P>
This is fixed by adding a local($_); to the doSomething subroutine, is
it (adding a local($_);) something that I should be doing
on a regular basis in the subroutines of my modules or did
I just happen upon an out of the ordinary situation?