in reply to use warnings => Use of uninitialized value...
Other times I expect that a variable could be undefined. In those instances, I explicitly allow for that option:
Other times I will set the variable to a false but defined value, such as an empty string or zero. It depends upon the context; often false and undefined are logically interchangeable, but other times they are not (in the above example, 0 has a different meaning than undef).if (defined($hash{key}) && $hash{key} =~ /\d+/) { ... }
It doesn't hurt to be explicit about your expectations; it can make things easier for the next person.
|
|---|