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 ";#hello Runoob
}
sub PrintMe{
  print "$string ";
}
sub PrintHello{
  print "$string ";#hello world
}
#calling function
PrintRunboo();
PrintHello();

原文地址:https://www.cnblogs.com/shunguo/p/11441657.html