加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

字符串 – 我如何解决这种情况下“在void上下文中无用的变量”?

发布时间:2020-12-15 21:20:02 所属栏目:大数据 来源:网络整理
导读:我如何解决这个“在void上下文中无用的变量”的情况? 例如: my $err = $soap_response-code," ",$soap_response-string,"n"; return $err; 我收到警告,如“无用的变量在无效的上下文”?为什么?我该如何解决? 解决方法 如果想连接参数,请使用“。”运
我如何解决这个“在void上下文中无用的变量”的情况?

例如:

my $err = $soap_response->code," ",$soap_response->string,"n";
  return $err;

我收到警告,如“无用的变量在无效的上下文”?为什么?我该如何解决?

解决方法

如果想连接参数,请使用“。”运算符或加入:
my $err = $soap_response->code. " ". $soap_response->string. "n";
my $err = join '',$soap_response->code,"n";

接下来是为什么Perl给你警告。

您将分配给标量变量$ err,赋值的右侧以标量上下文计算。

二进制“,”是逗号运算符。在标量上下文中,它评估其在void context中的左参数,将该值抛出,然后在标量上下文中评估其正确的参数并返回该值。

评估一个变量或一个常数并将该值抛弃是无用的。而perl警告你这个。

FYI:您的代码的另一个可能的问题:

my $err = $soap_response->code,"n";

这个任务的优先级是:

(my $err = $soap_response->code),"n";

有关更多信息,请参阅Perl operators and precedence和Comma operator。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读