GoSub...Return utasítás
Egy szubrutinból vagy függvényből meghív egy szubrutint, amelyet egy címke azonosít. A címkét követő utasítások a következő Return utasításig kerülnek végrehajtásra. Ezután a program a GoSub utasítást követő utasítással folytatódik.
Szintaxis:
lásd Paraméterek
Paraméterek:
Sub/Function
utasításblokk
Címke
utasításblokk
GoSub Címke
Exit Sub/Function
Címke:
utasításblokk
Return
End Sub/Function
A GoSub utasítás egy szubrutinon vagy függvényen belül meghívja a címkével jelölt lokális szubrutint. A címke nevének kettőspontra kell végződnie (":").
Ha a program futása olyan Return utasításhoz ér, amelyet nem előzött meg GoSub utasítás, akkor a LibreOffice Basic hibaüzenetet ad vissza. Az Exit Sub vagy Exit Function segítségével biztosítsuk, hogy a program elhagyja a szubrutint vagy függvényt a következő Return utasítás elérése előtt.
Az alábbi példa bemutatja a GoSub és Return használatát. A programszakasz kétszeri végrehajtásával a program kiszámítja a felhasználó által beírt két szám négyzetgyökét.
Példa:
Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
iInputa = Int(InputBox("Írja be az első számot: ","Számbevitel"))
iInputb = Int(InputBox("Írja be a második számot: ","Számbevitel"))
iInputc=iInputa
GoSub SquareRoot
Print iInputa;" négyzetgyöke ";iInputc
iInputc=iInputb
GoSub SquareRoot
Print iInputb;" négyzetgyöke ";iInputc
Exit Sub
SquareRoot:
iInputc=sqr(iInputc)
Return
End Sub