我收到了这个警告:
Use of uninitialized value in eval \"string\" at myscript.pl line 57.
当我运行此代码时:
eval;
{
`$client -f $confFile -i $inputFile -o $outputFile`;
};
if( $@ )
{
# error handling here ...
}
导致错误的原因是什么?
如何解决根本原因? (或以其他方式压制警告?)
答案 0 :(得分:12)
$@
而不是$?
。
此外,如果您丢弃结果,使用system可能更清晰。 e.g。
system($client, '-f', $confFile, '-i', $inputFile, '-o', $outputFile) and do {
#error handling here...
};
答案 1 :(得分:10)
eval
之后有一个分号。