前端之家收集整理的这篇文章主要介绍了
这个Perl表达式有什么问题?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
以下是什么问题.我得到$
属性未定义
错误.
if (my $attribute = $Data->{'is_new'} and $attribute eq 'Y') {
}
你太聪明了.这样做:
my $attribute = $Data->{'is_new'};
if (defined $attribute && $attribute eq 'Y') { ... }
问题有两个:
>你还有一个额外的)>我的表达语境非常紧密; $属性不在词法范围内,直到包含它的条件语句的主体,因此其他分支并且无法访问它.您需要将其提升到包含的上下文,如我的示例所示.
原文链接:https://www.f2er.com/Perl/171964.html