例如,如果 $do eq 'b'
,我需要匹配一些文本.
如果我运行此代码:
if (($do eq 'b') && (/text/))
{
do stuff
}
无论如何,perl 会评估第一个括号和第二个括号,还是会在第一个括号为假时停止计算第二个括号?
后续问题here . (我不知道我是应该提出一个新问题还是在这里发布)
最佳答案
是的。这种行为通常用于惯用的 perl。
考虑:
open FILE, ">$fname" or die $!;
如果打开文件没有错误(
open
返回真),die
语句不执行。这不是对 die
的特殊处理常规;这只是 perl 处理逻辑评估的方式。
关于perl - 如果答案已经确定,Perl 是否经过优化以跳过剩余的逻辑操作数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17178223/