Als u van plan bent op het ontwikkelen van een Visual Basic-toepassing , een van de eerste dingen die je moet weten is het verschil tussen de functies en subroutines , ook wel bekend als sub- procedures . U kunt denken aan subroutines en functies als miniatuur- programma's . In tegenstelling tot de variabelen , hoeft subroutines en functies geen gegevens bezit , maar zij houden VB code . Als u gegevens wilt terugkeren , gebruik dan een functie - anders , gebruik dan een subroutine . U kunt functies van subroutines en vice - versa te bellen . Definitie Een subroutine wordt samengesteld uit een reeks van Visual Basic verklaringen , omsloten door de " Sub " en " End Sub " verklaringen . Een functie procedure is ook samengesteld uit een reeks Visual Basic verklaringen , maar het moet worden ingesloten door " functie " en "End Function " statements . Alle uitvoerbare code moet binnen zowel een subroutine en een functie procedure . Beiden kunnen worden gedefinieerd in modules , klassen en structuren . Verklaring U verklaren een subroutine op een manier vergelijkbaar met hoe je zou verklaren een variabele , door onder vermelding van de naam van de parameter en het type data . U kunt de parameter doorgeven mechanisme zoals " ByVal " of opgeven " ByRef . " Elke parameter wordt behandeld als een lokale variabele de subroutine , waardoor de levensduur van de parameter is hetzelfde als die van de procedure . In een functie , kunt u verklaren het datatype van de waarde die het weer zoals " Integer " of "Double . " Als je niet het opgeeft " returntype , " de functie van een " object " datatype retourneren . Terugkerend Gegevens In VB , kunt u passeren een argument om een procedure ( subroutine of functie ) via waarde of via verwijzing door het specificeren van de " ByVal " of " ByRef " keywords . Standaard wordt een subroutine en een functie behandelen hun argumenten als in waarde , hetgeen betekent dat de procedure voor de inhoud van de variabele element in de aanroepende code niet kunt wijzigen . Een functie wordt een waarde terug te keren door het toewijzen van de waarde van de functienaam , of opnemen in de " Return " statement . Een subroutine normaal niet terugkeren een waarde , maar u kunt een argument definiëren als " ByRef " om een waarde te retourneren als parameter . Voorbeeld Het volgende is een voorbeeld van een subroutine : Sub tellOperator ( ByVal taak als Koord ) Dim stempel als Datum stempel = timeofday ( ) MsgBox ( " starten " & task & " in " & CStr ( stempel ) ) End Sub Het volgende is een voorbeeld van een functie : functie myFunction ( ByVal j As Integer ) As Double Terug 3,87 * j End Function
|