Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Function
eljárás a Vizualizációs alapszintű utasítások sorozata, amelyeket az és Function
az utasítások csatolnakEnd Function
. Az Function
eljárás végrehajt egy feladatot, majd visszaadja a vezérlést a hívó kódnak. Amikor visszaadja a vezérlést, egy értéket is visszaad a hívó kódnak.
Minden alkalommal, amikor az eljárást meghívják, az utasítások futnak, kezdve az utasítás utáni Function
első végrehajtható utasítással, és az első End Function
, Exit Function
vagy Return
utasítással végződik.
Egy eljárást egy modulban, osztályban vagy struktúrában határozhat meg Function
.
Public
Ez alapértelmezés szerint azt jelenti, hogy az alkalmazás bármely pontjáról meghívhatja, amely hozzáfér ahhoz a modulhoz, osztályhoz vagy struktúrához, amelyben definiálta.
Az Function
eljárás argumentumokat, például állandókat, változókat vagy kifejezéseket vehet fel, amelyeket a hívó kód továbbít neki.
Deklaráció szintaxisa
Az eljárás deklarálásának Function
szintaxisa a következő:
[Modifiers] Function FunctionName [(ParameterList)] As ReturnType
[Statements]
End Function
A módosítók megadhatják a hozzáférési szintet és a túlterheléssel, felülbírálással, megosztással és árnyékolással kapcsolatos információkat. További információ: Függvényutasítás.
Minden paramétert ugyanúgy deklarál, mint az aleljárások esetében.
Adattípus
Minden Function
eljárás adattípussal rendelkezik, ugyanúgy, mint minden változó. Ezt az adattípust az As
utasítás záradéka Function
határozza meg, és meghatározza annak az értéknek az adattípusát, amelyet a függvény a hívó kódnak ad vissza. Ezt az alábbi mintadeklarációk szemléltetik.
Function Yesterday() As Date
End Function
Function FindSqrt(radicand As Single) As Single
End Function
További információ: "Alkatrészek" a Függvényutasításban.
Értékek visszaadása
Az eljárás által Function
a hívó kódnak küldött érték a visszatérési értéke. Az eljárás ezt az értéket kétféleképpen adja vissza:
Az utasítással
Return
adja meg a visszatérési értéket, és azonnal visszaadja a vezérlőt a hívó programnak. Az alábbi példa ezt szemlélteti.Function FunctionName [(ParameterList)] As ReturnType ' The following statement immediately transfers control back ' to the calling code and returns the value of Expression. Return Expression End Function
Egy értéket rendel a saját függvény nevéhez az eljárás egy vagy több utasításában. A vezérlő nem tér vissza a hívó programhoz, amíg egy vagy
Exit Function
többEnd Function
utasítás nem lesz végrehajtva. Az alábbi példa ezt szemlélteti.Function FunctionName [(ParameterList)] As ReturnType ' The following statement does not transfer control back to the calling code. FunctionName = Expression ' When control returns to the calling code, Expression is the return value. End Function
A visszatérési érték függvénynévhez való hozzárendelésének előnye, hogy a vezérlőelem csak akkor tér vissza az eljárásból, ha egy utasítással vagy Exit Function
utasítással End Function
találkozik. Ez lehetővé teszi, hogy előzetes értéket rendeljen hozzá, és szükség esetén később módosítsa.
Az értékek visszaadásáról további információt a Függvényutasítás című témakörben talál. A tömbök visszaadásáról további információt a Tömbök című témakörben talál.
Hívás szintaxisa
Egy eljárást úgy Function
hívhat meg, hogy a nevét és argumentumait a hozzárendelési utasítás jobb oldalán vagy egy kifejezésben is feltünteti. Meg kell adnia minden olyan argumentum értékét, amely nem kötelező, és zárójelben kell csatolnia az argumentumlistát. Ha nincs megadva argumentum, kihagyhatja a zárójeleket.
Az eljáráshívás Function
szintaxisa a következő.
lvalue=
függvénynév[(
argumentumlistája)]
If ((
függvénynév[(
argumentumlista)] / 3) <=
kifejezés) Then
Amikor meghív egy Function
eljárást, nem kell annak visszatérési értékét használnia. Ha nem, a függvény összes művelete végrehajtva lesz, de a visszatérési érték figyelmen kívül lesz hagyva.
MsgBox gyakran így hívják.
Deklaráció és hívás illusztrációja
Az alábbi Function
eljárás kiszámítja a jobb oldali háromszög leghosszabb oldalát vagy hipotenuzát a másik két oldal értékeinek figyelembevételével.
Function Hypotenuse(side1 As Double, side2 As Double) As Double
Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function
Az alábbi példában egy tipikus hívás látható.hypotenuse
Dim testLength, testHypotenuse As Double
testHypotenuse = Hypotenuse(testLength, 10.7)