Categories: Perl | Tags: | Views: 1,261

 

先看一个正确可运行的例子:

1
2
3
4
5
6
sub a{
    my @aa = ("1","2","3");
    return @aa;
}
my @b = &a;
print $b[0],"\n";

这个是一点问题也没有,问题是,如果我不想用那个中间变量@b,而想直接用a,那该如果写呢?

 

其实这么写就能得到第一个元素的值了: (&a)[0]

但是用在了print后就报错了,原因是print把(&a)的括号当成了它参数的括号,这样就仅仅把&a当成了它的参数,当然会报错.

正确的写法:

1
print ((&a)[0]);
这篇文章来自 迷途知返(PWWANG.COM), 转载请注明出处。 版权说明

No comments yet.
;) :| :x :twisted: :roll: :oops: :o :mrgreen: :lol: :idea: :evil: :cry: :arrow: :P :D :?: :? :) :( :!: 8O 8)

你可以使用@somebody:开头, 来邮件通知somebody你回复了他的留言(用户名区分大小写).