perl中my变量和local变量之间的区别

#!/usr/bin/perl
#my 和 local的区别,my local都只能在一个block中使用,但是local可以在该block的子程序中调用 但是没有不可以
#我们可以使用 local 为全局变量提供临时的值,在退出作用域后将原来的值还回去。
#local 定义的变量不存在于主程序中,但存在于该子程序和该子程序调用的子程序中
$string="hello world!";
sub PrintRunboo{
  local $string;
  $string="hello Runoob!";
  PrintMe();#hello Runoob
  print "$string\n";#hello Runoob
}
sub PrintMe{
  print "$string\n";
}
sub PrintHello{
  print "$string\n";#hello world
}
#calling function
PrintRunboo();
PrintHello();

posted @ 2019-09-01 10:50  朵朵奇fa  阅读(677)  评论(0编辑  收藏  举报