Predavani argumentu coby hash?

Milan Sorm xsorm na informatics.muni.cz
Pondělí Březen 1 22:34:35 MET 1999


Mon, Mar 01, 1999 ve 04:41:45PM +0100 Ludek Finstrle napsal:
| >    V CGI.pm jsem videl, ze je mozne predavat argumenty timto stylem:
| > 
| > funkce(parametr1 => hodnota1, parametr2 => hodnota2, ...)
| > 
| >    Jak se tohoto da dosahnout?
| > 
| >    Bye Borek
| 
| Treba takto:
| 
| sub Funkce {
| 	my %opts = @_;
| 	$parametr1 = $opts{'parametr1'};
| 	$parametr2 = $opts{'parametr2'};
| 	...
| 	
| }
| 

CGI to ale dela elegantneji a umoznuje:

1. nacte se @_ jako prosty seznam a dela se:
2. je-li na rade -slovo, potom dalsi v rade je option k slovo a udelam
   $par{slovo} = $opt;   # $opt muze byt i reference, tedy {} ci [] ci sub {}
3. je-li na rade ref($narade), pak se jedna pravdepodobne o {} a v nem je to
   jasne (dvojicky)
4. ostatni retezce jsou brany jako pozicni parametry

je to elegantni

milan
-------------------------------------------------------------
Milan Šorm  (aka John Popelník)      telefon: +420 5 41512348
B205, FI MU, Botanická 68a, Brno     sorm na informatics.muni.cz
http://www.fi.muni.cz/~sorm/         tel. domů: (05) 46211083
-------------------------------------------------------------
"U vás na Moravě prý lidi chytáte a zavíráte pod zem ?" 
          "Tož ja, na jižní do sklípků a na severní do dolů."


Další informace o konferenci Perl