Perl_子例程调用by引用
发布时间:2020-12-16 00:06:37 所属栏目:大数据 来源:网络整理
导读:# 第一种情况,传 匿名子例程引用 my $rs=greet; #$rs=greet();#wrong #$rs-('Joan','Kim');#当调用的已经是 匿名子例程引用 的时候。这行放在这里 报错 my $hidrs=sub{ ? ? ? ? my $ele=shift (@_); ? ? ? ? print "$ele say "Hello World".n"; };#her
#第一种情况,传匿名子例程引用 my $rs=&;greet; #$rs=&;greet();#wrong #$rs->('Joan','Kim');#当调用的已经是匿名子例程引用的时候。这行放在这里报错 ? ? ? ? my $ele=shift (@_); ? ? ? ? print "$ele say "Hello World".n"; };#here is only 1 line not 4 lines #&$hidrs('Tim'); #my $hidrs这块不能放在sub greet块的后面,不然会报错。 $rs->('Joan','Kim');#当调用的已经是匿名子例程引用的时候。这行放在这里工作正常 ? ? ? ? my $ele=shift; ? ? ? ? print "$ele and "; ? ? ? ? return &$hidrs;#当调用的已经是 匿名子例程引用的时候,要注意写法与下面的 区分开来 }#here is 5 lines $rs->('Joan','Kim');#当调用的已经是 匿名子例程引用的时候。这行放在这里工作 正常 #另一种情况,传有名子例程引用 my $rs1 = &;test1;$rs1 -> ("Batman") -> ("Robin");#当调用的是 有名子例程引用的时候。这行放在这里工作 正常 #sub test1()#work subtest1 { ? ? ? ? my $arg = shift;? ? ? ? print $arg; ? ? ? ? return &;test2;#当调用的是 有名子例程引用的时候 } $rs1 -> ("Batman") -> ("Robin");#当调用的是有名子例程引用的时候。这行放在这里工作正常 #sub test2()#work sub test2 ? ? ? ? my $arg = shift; ? ? ? ? print " and $arg say "Hello World" too.n"; } $rs1 -> ("Batman") -> ("Robin");#当调用的是有名子例程引用的时候。这行放在这里工作正常 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |