下面是一些简单的Perl来计算数组中出现值的次数。这运行没有任何警告。Perl何时自动初始化变量?
use warnings;
use strict;
my @data = qw(1 1 2 3 4 5 5 5 9);
my %histogram;
foreach (@data)
{
$histogram{$_}++;
}
当循环体改为
$histogram{$_} = $histogram{$_} + 1;
Perl中警告说, “除了未初始化值的使用”。
这是怎么回事?为什么当作为操作数提供给++运算符并且未使用+运算符初始化时,初始化该值?
尽管警告不会直接破坏构建,但应该注意它们。 – Svante 2008-11-04 12:57:02