2017-06-27 84 views
-1

我一直在寻找一些Perl代码,它有一些子程序声明对我没有意义。它们显示为:Perl子程序声明意外符号

foo($$$$;$); 
foo(\$\$\$); 

什么是符号“;”和“\”在这些声明中是做还是意味着?

回答

5

他们是"prototypes" - 但Perl原型不像其他语言的原型,可能不应该使用。

$表示该函数的标量参数。 ;$表示可选的附加标量参数。并且\$表示参考论证。

参见:Why are Perl 5's function prototypes bad?

+2

[强制性 “为什么原型是坏” 链接(https://stackoverflow.com/questions/297034/why-are-perl-5s-function-prototypes-bad) – mob

+0

盗窃并编辑成答案。 – Sobrique