On Thu, Dec 10, 2009 at 10:48:39AM +0800, cnhack TNT wrote: >楼上正解,想要哈希或数组作为子程序的参数,请传递它们的引用给子程序 >
如同c的指针 Perl默认能传数组给函数吗? >2009/12/10 Michael Zeng <[email protected]> > >> 是应该用引用 >> >> 这样写传参数很晦涩, 特别是传数组的时候,而且开销很大,如...@list很大的时候 >> >> >> >> sub check{ >> my @d...@_[0]; >> my @n...@_[1]; >> my $n=0; >> for(my $i=0;$i<@num;$i++){ >> if($dd[$num[$i]] ne 'NA'){ >> $n++; >> } >> } >> return $n; >> } >> >> 用引用会比较清晰 >> >> 2009/12/10 钟声 <[email protected]> >> >> 引用应该可以的 >>> >>> $a = \...@one; >>> $b =...@two; >>> check($a,$b); >>> >>> >>> sub check { >>> my ($num,$dd) = @_; >>> $num->[0]; >>> $dd ->[0]; >>> >>> } >>> >>> 2009/12/10 camelbbs <[email protected]> >>> >>> 请问我的子程序想处理两个数组参数,应该怎么写,下面这样好像不行: >>>> >>>> sub check{ >>>> my @dd=shift; >>>> my @num=shift; >>>> my $n=0; >>>> for(my $i=0;$i<@num;$i++){ >>>> if($dd[$num[$i]] ne 'NA'){ >>>> $n++; >>>> } >>>> } >>>> return $n; >>>> } >>>> >>>> >>>> >>> >>> >>> >> >> >> -- >> Yours Sincerely >> Zeng Hong >> >> > >> > >> --~--~---------~--~----~------------~-------~--~----~ 您收到此信息是由于您订阅了 Google 论坛“PerlChina Mongers 讨论组”论坛。 要在此论坛发帖,请发电子邮件到 [email protected] 要退订此论坛,请发邮件至 [email protected] 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛 -~----------~----~----~----~------~----~------~--~---
