Perl里面未初始化的标量变量的值为undef. 你可以给变量赋值undef,或者使用undef()函数重置标量变量,使它们恢复到未初始化的状态
my $toast = undef; undef $history;
未初始化的数组变量,其值相当于一个空列表().如果把undef赋值给数组变量,实际得到的会是一个包含单个元素(值为undef)的数组。所以不要将undef
赋值给数组变量。
my @going_gone = (); #或者使用undef 函数 undef @going_gone;
和数组一样,你也不能把undef赋值给某个散列,但可以将空列表()赋值给某个散列变量,以此将创建空散列。
不能通过undef赋值给元素减小或者移除散列。
delete $spacers('husband'); delete @spacers{'daughter','son'};