..
use strict;
use warnings;
...
my (%customer);
%customer = ();
...
17 sub _customer_id {
18 my $customer_r = shift;
19 unless(defined $customer{$customer_r}){
20 $customer{$customer_r} = ++$customer_id;
21 }
22 $customer{$customer_r};
23 }
我只是检查是否存在某个哈希键。
但是Use of uninitialized value in hash element
位于19
,20
,22
。
为什么?
答案 0 :(得分:9)
此错误表示$customer_r
为undef
。
你是怎么称呼这个功能的?
答案 1 :(得分:1)
您可能需要查看此声明
my $customer_r = shift;
如果$customer_r
获得一些空值,那么当您尝试使用此变量时会出现此错误。
基本上,每当您尝试使用空变量(未初始化)时,您都会遇到此错误。