xxggmmxx 发表于 2017-5-18 13:09:30

perl程序中shift的用法

shift ARRAY
shift
这个函数把数组的第一个值移出并且返回它,然后把数组长度减一并且把所有的东西都顺移。如果在数组中不再存在元素,它返回 undef。
如果省略了 ARRAY,那么该函数在子过程和格式的词法范围里移动 @_;
它在文件范围(通常是主程序)里移动 @ARGV。
子过程通常以拷贝它们的参数到词法变量里开始,而 shift 可以用于这个目的:
sub marine {
my $fathoms = shift;      # 深度
my $fishies   = shift;   # 鱼的数量
my $o2         = shift;   # 氧气问题
# ...
}总之就是shift没有数组作为参数时,就是移动@_这个默认的参数。perl里经常用这种缺省方法的。
转载自:http://zhidao.baidu.com/question/85574641.html
页: [1]
查看完整版本: perl程序中shift的用法