Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med en parameter kan anropande kod skicka ett värde till proceduren när den anropar den. Du deklarerar varje parameter för en procedur på samma sätt som du deklarerar en variabel och anger dess namn och datatyp. Du anger också överföringsmekanismen och om parametern är valfri.
Mer information finns i Procedurparametrar och argument.
Definiera en procedurparameter
I procedurdeklarationen lägger du till parameternamnet i procedurens parameterlista och separerar det från andra parametrar med kommatecken.
Bestäm parameterns datatyp.
Följ parameternamnet med en
Assats för att ange datatypen.Bestäm vilken överföringsmekanism du vill använda för parametern. Normalt skickar du en parameter efter värde, såvida du inte vill att proceduren ska kunna ändra dess värde i den anropande koden.
Föregå parameternamnet med ByVal eller ByRef för att ange överföringsmekanismen. Mer information finns i Skillnader mellan att skicka ett argument efter värde och efter referens.
Om parametern är valfri föregår du överföringsmekanismen med Valfri och följer parameterdatatypen med ett likhetstecken (
=) och ett standardvärde.I följande exempel definieras dispositionen av en
Subprocedur med tre parametrar. De första två krävs och den tredje är valfri. Parameterdeklarationerna avgränsas i parameterlistan med kommatecken.Sub updateCustomer(ByRef c As customer, ByVal region As String, Optional ByVal level As Integer = 0) ' Insert code to update a customer object. End SubDen första parametern accepterar ett
customerobjekt ochupdateCustomerkan direkt uppdatera variabeln som skickas tillceftersom argumentet skickas av ByRef. Proceduren kan inte ändra värdena för de två sista argumenten eftersom de skickas till ByVal.Om den anropande koden inte anger något värde för parametern
levelanger Visual Basic standardvärdet 0.Om typkontrollväxeln (Alternativ strikt instruktion) är
Off,As-satsen är valfri när du definierar en parameter. Men om någon parameter använder enAs-sats måste alla använda den. Om typkontrollväxeln ärOn, krävsAs-klausulen för varje parameterdefinition.Att ange datatyper för alla dina programmeringselement kallas stark typning. När du anger
Option Strict Onframtvingar Visual Basic stark typning. Detta rekommenderas starkt av följande skäl:Det aktiverar IntelliSense-stöd för dina variabler och parametrar. På så sätt kan du se deras egenskaper och andra medlemmar när du skriver in din kod.
Det gör att kompilatorn kan utföra typkontroll. Detta hjälper till att fånga in uttryck som kan misslyckas vid körningstid på grund av fel som överflöde. Den fångar också anrop till metoder på objekt som inte stöder dessa metoder.
Det resulterar i snabbare körning av din kod. En orsak till detta är att om du inte anger någon datatyp för ett programmeringselement tilldelar Visual Basic-kompilatorn den
Objecttypen. Din kompilerade kod kan behöva konvertera fram och tillbaka mellanObjectoch andra datatyper, vilket minskar prestandan.
Se även
- Procedurer
- Underprocedurer
- Funktionsprocedurer
- Anvisningar: Skicka argument till en procedur
- Överföra argument genom värde och referens
- rekursiva procedurer
- Proceduröverbelastning
- Objekt och klasser
- Object-Oriented Programmering (Visual Basic)