如何在无效环境中解决这种“无用的变量”的情况'?

时间:2012-01-04 14:26:42

标签: perl list warnings

如何解决在虚拟环境中无用的变量的情况'? (第17行)

sub next {
    my $page = shift;

    my $next_stage = $page->{tree}->{nextstage};
    my $prev_stage = $page->{stage};

    print "Moving from: $prev_stage to $next_stage.\n" if ($DEBUG);

    if ($next_stage eq "end") {
        serialize_grabber_conf_answers($page, $config_file_tmp);
        $grabber_initialized = 1;
        return FALSE;
    }

    unless (defined ($page->{next_page})) {
        serialize_grabber_conf_answers($page, $config_file_tmp);
        my $next_page = ($page, $config_file_tmp, $next_stage);
        $next_page->{stage} = $next_stage;
        $page->{next_page} = $next_page;
        $next_page->{prev_page} = $page;
    }

    return FALSE;
    }

由于

1 个答案:

答案 0 :(得分:9)

有问题的一行是

my $next_page = ($page, $config_file_tmp, $next_stage);

您正在分配标量,因此只会使用列表的最后一个成员。以前的成员被抛弃 - 无用的变量。