When declaring a variable with 'my', you say that it is lexical,
that is, the variable is only visible within the scope that you
If you on the other hand 'use vars', you say that "in this package
I want to use variable $foo without having to write out it's fully
qualified name ($main::foo). $foo will not be lexically scoped, but
will be a global (a package variable).
In perl 5.6 you may also use the keyword 'our' to declare variables
as globals, but with a visibility scope equal to a lexical variable.
A global with lexical scope ? That did sound strange :)
Writing 'our $foo' inside a block or subrutine will make $foo
a global - but you may refer to it as $foo _only_ within the lexical
scope. You can still refer to $foo outside the scope, but then you
will have to fully qualify it as $main::foo (or $my_package::foo)
In reply to RE: use vars
in thread use vars
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||