BEGIN {
*SIZE = sub() { 2 };
}
*ITEM = sub() { 10 };
print 'size=', SIZE, "\n";
print 'item=', ITEM, "\n";
, :
- .
BEGIN.BEGIN.*ITEM = sub() { 10 };print 'size=', SIZE, "\n";print 'item=', ITEM, "\n";
- .
*ITEM = sub() { 10 };print 'size=', SIZE, "\n";print 'item=', ITEM, "\n";
, print 'item=', ITEM, "\n"; , . ITEM , . ITEM . - , .
>perl -E"my $x = ITEM; say $x;"
ITEM
>perl -E"my $x = 'ITEM'; say $x;"
ITEM
, Perl :
>perl -E"use strict; my $x = ITEM; say $x;"
Bareword "ITEM" not allowed while "strict subs" in use at -e line 1.
Execution of -e aborted due to compilation errors.
, ITEM .
print 'item=', ITEM(), "\n";
&ITEM , & Perl .