找回密码
 注册
查看: 3157|回复: 0

perl子程序中参数列表的长度

[复制链接]
发表于 2011-11-13 22:25:18 | 显示全部楼层 |阅读模式
在实际的Perl 代码中,传递给子程序的参数个数是没有限制的。这符合Perl 的设计哲学“没有不必要的限制”。当然,有
一点和传统的程序设计语言很不相同,这些语言中要求其子程序中参数个数和参数类型是严格确定的。Perl 的这种灵活特
性很好,但(你将在&max 这个函数中看到)可能引起问题,如使用了错误的参数个数来调用子程序。
当然,子程序可以容易的检测@_是否含有恰当的个数。例如,我们可以如下的书写&max◆:
◆当在下一章学习warn 后,你可以使用恰当的警告信息。如果认为这是个严重的问题,也可以使用die,这也将在同一章中有介绍。
sub max{
if(@_!=2){
print “WARNING! &max should get exactly two arguments!\n”;
}
#continue as before….
.
.
.
}
if 语句检测参数个数是否恰当(此时,数组是在标量环境中使用的,它将返回其个数),在第三章中有介绍。
但在实际的Perl 程序中,很少使用这样的方法;更好的方法是子程序可以在任意参数个数的调用者中正常工作。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-12-4 01:04 , Processed in 0.028715 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表