use strict; my @ar = (1,2,3); foreach my $a (@ar) { $a = $a + 1; } print join ",",@ar;
和输出?
2,3,4
有没有搞错?为什么这么做?这会永远发生吗?是$a不是一个本地变量?他们在想什么?
$a被别名为数组中的值 – 这允许您修改循环内的数组.如果你不想这样做,不要修改$a.