Perl 子程序的引用
#!/usr/bin/perl sub people_say{ my $name=shift(); if($name eq "jack"){ print "Hello:",$name,"happy the day!\n"; }else{ print "Hi:",$name,"This is my home,welcome~\n"; } } sub people_say2{ my $name=shift(); if($name eq "back"){ print "Hello,My name's:",$name,"happy the day too.\n"; }else{ print "Thank you!\n"; } } #上面的子程序可以忽略,下面这块才是重点。 # 这里用了哥引用的方法。 my %greets=( People_sayone => \&people_say, People_saytwo => \&people_say2, ); for my $person(qw(People_sayone People_saytwo)){ $greets{$person}->('caodan'); }