您的位置:首页 > 其它

Perl 子程序变量外部使用--又称为闭包

2015-02-01 15:03 176 查看
my  $var = "aaaaaaaaa";
print "1---\$var is $var\n";
&fun1;
&fun2;

#子程序用的变量会被销毁

print "3---\$var2 is $var2\n";

print "4----\$var2 is $$var3\n";

sub fun1{
print "2----\$var is $var\n"};

##外部变量在子程序中仍旧有用

sub fun2{
my $var2="bbbbbbbbbb";
# my  $var3=\$var2;
$var3=\$var2;
print "\$var3 is $$var3\n";
};

#此时的结果:
G:\运维系统开发\Tk\1>perl 4.pl
1---$var is aaaaaaaaa
2----$var is aaaaaaaaa
$var3 is bbbbbbbbbb
3---$var2 is
4----$var2 is

要想子程序里的变量在外部生效, 引用变量必须为全局变量

G:\运维系统开发\Tk\1>perl 4.pl
1---$var is aaaaaaaaa
2----$var is aaaaaaaaa
$var3 is bbbbbbbbbb
3---$var2 is
4----$var2 is bbbbbbbbbb
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: