miten saan kutsuttua aliohjelmaa muuttujan avulla :
$muuttuja = "auto";
$vastaus = &sub::$muuttuja('lada');
ei toimi, mutta :
$vastaus = &sub::auto('lada');
toimii kuten pitääkin.
aliohjelma kutsuminen muuttujalla
3
1047
Vastaukset
- perliä
Tuliko vihdoinkin niin vaikea, ettei löytynyt vastatusta :)
Luova evalin käyttö tuntui ainakin toimivan:
#!/usr/bin/perl -w
sub auto {
print "auto:@_\n";
return 1;
}
sub auto2 {
print "auto2:@_\n";
return 2;
}
my $muuttuja = "auto";
my $vastaus = eval qq/$muuttuja("lada");/;
print "vastaus=$vastaus\n";
$muuttuja = "auto2";
$vastaus = eval qq/$muuttuja("lada");/;
print "vastaus 2=$vastaus\n";
- *BSD
Tohon on kaksi tapaa:
1. Kutsut funktiota "synbolisen linkin kautta"
{
' no strict 'refs';
' my $muuttuja = 'foo';
' &{ $muuttuja }();
}
Kun aina käytät 'use strict' niin tarvitsee ton blokin aikana käskyttää, ettei välitä noista (no strict ..).
2. Pistät sen funktion "viittauksen" muuttujaan:
my $ref = \&foo;
&{ $ref }();
Kohta 2. on suositeltu.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nurmossa kuoli 2 Lasta..
Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .1357455Maisa on SALAKUVATTU huumepoliisinsa kanssa!
https://www.seiska.fi/vain-seiskassa/ensimmainen-yhteiskuva-maisa-torpan-ja-poliisikullan-lahiorakkaus-roihuaa/15256631664492Vanhalle ukon rähjälle
Satutit mua niin paljon kun erottiin. Oletko todella niin itsekäs että kuvittelet että huolisin sut kaiken tapahtuneen563510Mikko Koivu yrittää pestä mustan valkoiseksi
Ilmeisesti huomannut, että Helenan tukijoukot kasvaa kasvamistaan. Riistakamera paljasti hiljattain kylmän totuuden Mi5103275Purra hermostui A-studiossa
Purra huusi ja tärisi A-studiossa 21.11.-24. Ei kykene asialliseen keskusteluun.2972164Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!
Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde361813Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena
Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja241799- 911593
Miksi pankkitunnuksilla kaikkialle
Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että1791505Ensitreffit Hai rehellisenä - Tämä intiimiyden muoto puuttui suhteesta Annan kanssa: "Meillä ei..."
Hai ja Anna eivät jatkaneet avioliittoaan Ensitreffit-sarjassa. Olisiko mielestäsi tällä parilla ollut mahdollisuus aito151456