Thread Problem mit HASH ref
(48 answers)
Opened by bianca at 2010-05-02 13:09
dispatch-tabelle kam hier schon häufig vor, aber ich wiederhole gern nochmal:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 my %dispatch = ( blubb => \&sub1, foo => \&sub2, bar => \&sub3, ); sub sub1 { ... } ... my $sub = "foo"; $dispatch{ $sub }->($parameter); # ruft sub2($parameter) auf nur explizit erlaubte subnamen können hier aufgerufen werden. zu can() siehe: perldoc UNIVERSAL Code (perl): (dl
)
1 2 3 4 my $coderef = Modul::Name->can("subname"); my $coderef = main->can("subname"); $coderef->($parameter); argument kann auch ein voller paketname mit sub sein, deshalb sollte das argument nicht von ausserhalb blind entgegengenomen werden. edit: beispiel zu can() ergänzt Last edited: 2010-05-09 16:46:56 +0200 (CEST) Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |