我需要在 eval 中隐藏警告,但其余代码应继续抛出警告消息。这是我所拥有的 -
eval "\$value = $hash->{key}";
现在 $hash->{key} 的值可以是函数调用,例如:
$hash->{key} = "function(0.01*$another_var)";
当$another_var
是undef
(或""
)时,问题就来了。该脚本只是以以下消息结束 -
参数 "" 在 (eval 1381) 第 1 行的乘法 (*) 中不是数字。
有什么建议可以避免这种情况吗?我正在考虑的一个选择是解析括号内的值并首先评估它,但它与我正在处理的数据相当复杂。