我有时会看到这样的 Perl 代码:
my ( $variable ) = blah....
在单个变量两边加上括号有什么意义?我认为括号仅在声明多个变量时使用,例如:
my ( $var1, $var2, $var3 ) = blah...
出现差异时有以下几种情况:
-
When array在右侧
my @array = ('a', 'b', 'c');
my $variable = @array; # 3 size of @array
my ($variable) = @array; # 'a' $array[0]
-
When list在右侧
my $variable = qw/ a b c d /; # 'd' last item of the list
my ($variable) = qw/ a b c d /; # 'a' first item of the list
-
带有变量的子程序 (数组/标量) 返回值
sub myFunction {
...
return (wantarray() ? @array : $scalar);
}
my $variable = myFunction(...); # $scalar from the subroutine
my ($variable) = myFunction(...); # $array[0] from the subroutine
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)