Kilépés a függvényből (return)

Elképzelhető, hogy egy függvényből nem a legvégén akarunk kilépni, mert időközben egy elágazás alapján már nem kell további műveletet végezni. Ennek egyik oka lehet valamilyen hiba, amit a 1.6.2.3 Hibajelzés fejezetben látott throw kulcsszóval jelezni tudunk, és itt a függvény végrehajtása meg is szakad.

Ha nem hiba miatt, hanem „normális” módon akarunk egy függvényből kilépni, akkor erre használhatjuk a return  kulcsszót.

[11] PS C:\>function típus ($i)

>> {

>>     switch ($i)

>>     {

>>         {$i -is [int32]} {"Egész" ; return}

>>         {$i -is [double]} {return "Akár tört"}

>>         {$i -is [string]} {return "Szöveg"}

>>     }

>>     "Nem igazán tudom, hogy mi az, hogy $i"

>> }

>> 

[12] PS C:\>típus 32

Egész

[13] PS C:\>típus "bla"

Szöveg

[14] PS C:\>típus (get-date)

Nem igazán tudom, hogy mi az, hogy 04/15/2008 09:47:04

A példafüggvényemben típust vizsgálok a switch kulcsszó segítségével. Először vizsgálom, hogy az $i paraméter egész-e? Ha igen, akkor kiírom, hogy „Egész” és kilépek a függvényből. Használhattam volna a break kulcsszót is, de az csak a switch-ből lépett volna ki és végrehajtotta volna a függvény utolsó utasítását is.

A return másik szintaxisát használtam az „Akár tört” és a „Szöveg” ágon, azaz a függvény outputja lesz a return paramétere.

Látszik, hogy csak nagyon ritkán elkerülhetetlen a return alkalmazása, hiszen az én példámban is tehettük volna azt is, hogy a „Nem igazán tudom...” kiírást berakjuk a switch default ágába is, illetve a return-ök helyett alkalmazhattam volna break-et is (ha nem akartam volna kikerülni a függvény végén található kifejezéseket). Mindenesetre bizonyos helyzetekben jól jöhet a return, tudjunk róla!



Word To HTML Converter