这个问题在这里已经有了答案:
10年前关闭。
Possible Duplicate:
What does the function declaration “sub function($$)” mean?
sub t(&@) {
print @_;
}
t {print 1};
我试图改变
&@
至&$
它会失败。它的术语是什么,以便我可以搜索?
最佳答案
&@
是一个子程序原型(prototype)。这使您可以创建类似于内置 grep
的语法。函数(接受一个 block ,然后是一个列表)。 LIST 甚至可以是空列表:()
.&$
使用时将强制在标量上下文中评估第二个参数(这是强制性的)。由于 t {print 1};
中没有第二个参数它将无法编译。
阅读更多关于子程序原型(prototype)的信息: perldoc perlsub
.
关于perl - &@ 对 sub 意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7494906/