Perl 标量与控制流基础指南
1. 多重赋值
在 Perl 里, = 不仅是赋值运算符,它还会返回所赋的值。这一特性让我们能够一次性设置多个变量,就像下面这个简单示例:
$d = $c = $b = $a = 1;
解读这个代码时要从右向左看。首先把 $a 设置为 1,赋值操作的结果就是 1。接着 $b 被赋值为这个结果(也就是 1),依此类推。
2. 变量作用域
到目前为止,我们看到的变量大多是全局变量。全局变量在程序的任何地方都能被访问和修改。在小型程序里,这没问题,因为我们能轻松掌握变量的赋值和使用位置。不过,当编写大型程序时,这就会成为一个问题。
假设程序的某一部分使用了变量 $counter ,而另一部分也需要一个计数器,就不能再用 $counter 这个名字了,否则会覆盖原来的值。特别是在使用子程序时,这个问题会更突出。子程序是一段可以临时调用的代码,执行完特定任务后再回到原来的程序流程。在大型程序中,要确保所有变量名都不同,这显然不太现实。
为了解决这个问题,Perl 引入了词法变量。词法变量的作用域被限制在其所在的代码块以及内部的所有代码块中。如果不在代码块内,其作用域就是当前文件。要声明一个词法变量,使用 my $variable; 语句,它会为当前代码块创建一个全新的词法变量,并将其初始化为未定义值。
下
Perl标量与控制流入门
超级会员免费看
订阅专栏 解锁全文
2039

被折叠的 条评论
为什么被折叠?



