Dela via


Underuttryck (Visual Basic)

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 Overloads eller Overrides.

  • 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 ParamArray parametrar 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")

Se även