vars(3) vars(3)
vars - Perl pragma to predeclare global variable names
use vars qw($frob @mung %seen);
This will predeclare all the variables whose names are in the list,
allowing you to use them under "use strict", and disabling any typo
warnings.
Unlike pragmas that affect the $^H hints variable, the use vars and use
subs declarations are not BLOCK-scoped. They are thus effective for the
entire file in which they appear. You may not rescind such declarations
with no vars or no subs.
Packages such as the AutoLoader and SelfLoader that delay loading of
subroutines within packages can create problems with package lexicals
defined using my(). While the vars pragma cannot duplicate the effect of
package lexicals (total transparency outside of the package), it can act
as an acceptable substitute by pre-declaring global symbols, ensuring
their availability to the later-loaded routines.
See the section on Pragmatic Modules in the perlmod manpage.
PPPPaaaaggggeeee 1111 [ Back ]
|