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 (":").

Figyelmeztetés ikon

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