kullanılarak referans olarak altyordamlarını çağıran Sorunlar, bunu gibi referans (ya ada) tarafından bir işlevi çağırmak edebiliyoruz: Ne yapmaya çalışıyorum kullanımPerl: Perl bir karma değer
my $functionName = 'someFunction';
&$functionName();
#someFunction defined here:
sub someFunction { print "Hello World!"; }
olduğunu bir hash gelen, bu nedenle böyle bir değeri: Ben olsun
my %hash = (
functionName => 'someFunction',
);
&$hash{functionName}();
#someFunction defined here:
sub someFunction { print "Hello World!"; }
Ve hata Küresel sembolü "$ karma" açık paket adını gerektirir.
Sorum şu: Bir ara değişken kullanmadan bunu yapmak için doğru bir yol var mı?
Bu konuda herhangi bir yardım çok takdir edilecektir!
Ayrıca 'stric no' gerektirmeyen '% hash = (function => \ & someFunction)' işlevini de yapabilirsiniz t 'refs'. – TLP
@TLP +1, ben * bu * cevap verecektim. '' use strict; 'kaydeder ** çok fazla sorun ... – Dallaylaen
Bunu kullanabiliyorum, ancak biraz okunamayan kodlar ekliyor (şimdilik) ... Fonksiyonel fonksiyonun değerini dinamik olarak ayarlıyorum ve Bir işlevi adına göre çağırmak. Perl çok eğlenceli! – Thumper