为什么这个eval会出现语法错误?

时间:2014-11-14 09:49:54

标签: perl syntax-error eval

我第一次尝试使用eval,并为以下代码获取编译错误:

my $dom;
eval {
    $dom = $PRSR->load_xml(location => $fullpathname, no_blanks => 1);
}

my $dtlDocType = getObjectType($dom); # <----- the error occurs here

它说&#34;全局符号$ dtlDocType需要显式包名&#34;。当我删除eval并让行设置$ dom保持没有块时,它可以正常工作。将第一行中的$ dom初始化为任何内容并没有任何区别。

有什么问题?

1 个答案:

答案 0 :(得分:4)

eval { ... }之后需要一个分号。