阵列长度检查时未初始化的值警告

时间:2012-05-31 00:35:48

标签: arrays perl dereference

我有以下代码:

my @product_access = @{ $products->{ $PosDetails->{"SalProductRef"}->[$i]}
                      {DetAccess_tab} };

if ( @product_access == 1 )
{
    $revenue{ $products->{ $PosDetails->{"SalProductRef"}->[$i] }{DetFinanceCategory} }
            {"Total"} += $PosDetails->{"SalSubTotal"}->[$i];
}

在我检查数组长度的地方,我收到Use of uninitialized value in concatenation警告。在那条线上发出警告似乎有点奇怪。为什么会显示此警告?

1 个答案:

答案 0 :(得分:6)

某些版本的perl会在if行的elsif子句中报告一些警告。我打赌这就是这种情况。