Kommentar
Å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.
Deklarerar parametrarna och koden som definierar ett subroutine lambda-uttryck.
Syntax
Sub ( [ parameterlist ] ) statement
- or -
Sub ( [ parameterlist ] )
[ statements ]
End Sub
Delar
| Begrepp | Definition |
|---|---|
parameterlist |
Valfritt. En lista över lokala variabelnamn som representerar parametrarna i proceduren. Parenteserna måste finnas även när listan är tom. Mer information finns i Parameterlista. |
statement |
Obligatoriskt. En enda instruktion. |
statements |
Obligatoriskt. En lista med instruktioner. |
Anmärkningar
Ett lambda-uttryck är en underrutin som inte har något namn och som kör en eller flera instruktioner. Du kan använda ett lambda-uttryck var som helst där du kan använda en ombudstyp, förutom som ett argument till RemoveHandler. Mer information om ombud och användning av lambda-uttryck med ombud finns i Delegera-instruktion och Avslappnad delegatkonvertering.
Lambda-uttryckssyntax
Syntaxen för ett lambda-uttryck liknar syntaxen för en standardunderrutin. Skillnaderna är följande:
Ett lambda-uttryck har inget namn.
Ett lambda-uttryck kan inte ha en modifierare, till exempel
OverloadsellerOverrides.Brödtexten i ett lambda-uttryck med en rad måste vara en -instruktion, inte ett uttryck. Brödtexten kan bestå av ett anrop till en underprocedur, men inte ett anrop till en funktionsprocedur.
I ett lambda-uttryck måste antingen alla parametrar ha angivna datatyper eller så måste alla parametrar härledas.
Valfria parametrar och
ParamArrayparametrar tillåts inte i lambda-uttryck.Generiska parametrar tillåts inte i lambda-uttryck.
Exempel
Följande är ett exempel på ett lambda-uttryck som skriver ett värde till konsolen. Exemplet visar både syntaxen för lambda-uttryck med en rad och flera rader för en underrutin. Fler exempel finns i Lambda-uttryck.
Dim writeline1 = Sub(x) Console.WriteLine(x)
Dim writeline2 = Sub(x)
Console.WriteLine(x)
End Sub
' Write "Hello".
writeline1("Hello")
' Write "World"
writeline2("World")