+ -
当前位置:首页 → 问答吧 → 关于||=符号的含义

关于||=符号的含义

时间:2010-10-23

来源:互联网

本帖最后由 leooys 于 2010-10-23 15:40 编辑
  1. my $args = join " ", map { /\s/ ? "\"$_\"" : $_ } @ARGV;
  2. $args ||= "";
复制代码
请问下这2句的含义,特别是第2句, ||= 这符号是什么意思? 在这里有什么意义?

作者: leooys   发布时间: 2010-10-23

本帖最后由 zhlong8 于 2010-10-23 16:09 编辑

$args = $args || '';

这里没啥特别意义,检验是否无参数的。一般这样用是无命令行参数的时候设置默认参数的,这里设置为空,感觉挺无聊的。

作者: zhlong8   发布时间: 2010-10-23

$args 应该是由空格分隔的参数组成的字符串吧,这里和"" 做||运算的目的何在?

作者: leooys   发布时间: 2010-10-23



QUOTE:
$args = $args || '';

这里没啥特别意义,检验是否无参数的。一般这样用是无命令行参数的时候设置默认参 ...
zhlong8 发表于 2010-10-23 16:01




    谢谢,我也感觉没太多用处,但又不知道是不是有什么别的含义。

作者: leooys   发布时间: 2010-10-23

回复 leooys


    如果默认参数非空用这种方式就很好,很多书上的例子都是这么用的。

作者: zhlong8   发布时间: 2010-10-23