![]() |
![]() |
| |||||
|
Ebben a példában a Teszt függvényben definiált A értéket a program átadja paraméterként az ErtekModositasa függvénynek. A program ezután módosítja az értéket 20-ra, és hozzárendeli AzErtek változóhoz, amely megmarad akkor is, amikor a függvény kilép. Egy paraméter átadható értékként is, ha nem akarjuk, hogy a paraméternek módosuljon az értéke. Ha egy paramétert értékként akarunk átadni, győződjünk meg róla, hogy a ByVal kulcsszót beírjuk a paraméter elé a függvényfejlécben. Az előző példában, ha kicseréljük az ErtekModositasa függvényt a
függvényre, akkor az A változó értéke nem fog módosulni. Az ErtekModositasa függvény meghívása után az A változó megtartja a 10 értékét. Megjegyzés - A StarOffice Basic programban a paraméterek átadása eljárásoknak és függvényeknek megegyezik a VBA-ban használt módszernek. Alapértelmezésként a paraméterek hivatkozás szerint kerülnek átadásra. Ha paramétereket érték szerint akarunk átadni, használjuk a ByVal kulcsszót. A VBA-ban használhatjuk a ByRef kulcsszót is, ha a paramétert hivatkozás szerint akarjuk átadni. A StarOffice Basic nem támogatja ezt a kulcsszót, mert a hivatkozás szerinti átadás az alapértelmezett módszer a StarOffice Basic programban. Opcionális paraméterekA függvények és eljárások csak akkor hívhatók meg, ha minden szükséges paraméter átadásra kerül a hívás során. A StarOffice Basic programban definiálhatók opcionális paraméterek is, amelyek ha nincsenek megadva a meghíváskor, akkor a StarOffice Basic üres paramétert ad át helyettük. A
példában az A paramétert kötelező megadni, viszont a B paraméter opcionális. Az IsMissing függvénnyel ellenőrizhető, hogy egy paraméter megvan-e adva vagy nincs.
A példaprogram először ellenőrzi, hogy a B paraméter meg van-e adva, és ha igen, az értékét hozzárendeli a B_Local változóhoz. Ha egy adott paraméter nincs megadva, akkor egy alapértelmezett értéket (ebben a példában a 0-t) kap a B_ Local változó az átadott paraméter helyett. Megjegyzés - A VBA-ban rendelkezésre álló ParamArray kulcsszó nem támogatott a StarOffice Basic programban. RekurzióMost már használható rekurzió a StarOffice Basic programban. A rekurzív eljárás vagy függvény saját magát hívja meg egészen addig, amíg egy alapfeltétel igazzá nem válik. Ha a függvényt ezzel az alapfeltétellel hívják meg, egy eredményt ad vissza. A következő példa bemutat egy rekurzív függvényt, amely kiszámolja a 42, -42 és a 3.14 faktoriálisát:
A példaprogram visszaadja 42 faktoriálisát azzal, hogy rekurzívan meghívja a CalculateFactorial függvényt addig, amíg az el nem éri a 0! = 1 alapfeltételt. Megjegyzés - A használható rekurzív szintek száma a szoftverplatformtól függ. Windowsban a rekurzivitás szintje 5800. Solarisban és Linuxban ez a veremmérettől függ. HibakezelésA hibák megfelelő kezelése az egyik legidőigényesebb feladat a programozásban. A StarOffice Basic számos eszközt biztosít a hibakezelés leegyszerűsítésére. Az On Error utasításAz On Error utasítás a hibakezelés alapja:
| |||||
| |||||