perl静态变量

state操作符功能类似于C里面的static修饰符,state关键字将局部变量变得持久。

state也是词法变量,所以只在定义该变量的词法作用域中有效,举个例子:

#!/usr/bin/perl
 
use feature 'state';
 
sub PrintCount{
   state $count = 0; # 初始化变量,由于静态变量,所以每次count都是同一个,会保存上次的值
   print "counter 值为:$count\n";
   $count++;
}
 
for (1..5){
   PrintCount();
}

以上程序执行输出结果为:

counter 值为:0
counter 值为:1
counter 值为:2
counter 值为:3
counter 值为:4




posted @ 2021-01-28 14:06  WellMandala  阅读(242)  评论(0编辑  收藏  举报