Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Dichiara i parametri e il codice che definiscono un'espressione lambda subroutine.
Sintassi
Sub ( [ parameterlist ] ) statement
- or -
Sub ( [ parameterlist ] )
[ statements ]
End Sub
Parti
| Termine | Definizione |
|---|---|
parameterlist |
Opzionale. Elenco di nomi di variabili locali che rappresentano i parametri della routine. Le parentesi devono essere presenti anche quando l'elenco è vuoto. Per altre informazioni, vedere Elenco di parametri. |
statement |
Obbligatorio. Singola istruzione. |
statements |
Obbligatorio. Elenco di istruzioni. |
Osservazioni:
Un'espressione lambda è una subroutine che non ha un nome e che esegue una o più istruzioni. È possibile usare un'espressione lambda ovunque sia possibile usare un tipo delegato, ad eccezione di un argomento per RemoveHandler. Per altre informazioni sui delegati e sull'uso di espressioni lambda con delegati, vedere Istruzione delegate e conversione di delegati relaxed.
Sintassi dell'espressione lambda
La sintassi di un'espressione lambda è simile a quella di una subroutine standard. Le differenze sono le seguenti:
Un'espressione lambda non ha un nome.
Un'espressione lambda non può avere un modificatore, ad esempio
OverloadsoOverrides.Il corpo di un'espressione lambda a riga singola deve essere un'istruzione, non un'espressione. Il corpo può essere costituito da una chiamata a una routine secondaria, ma non da una chiamata a una routine di funzione.
In un'espressione lambda tutti i parametri devono avere tipi di dati specificati o tutti i parametri devono essere dedotti.
I parametri e
ParamArrayfacoltativi non sono consentiti nelle espressioni lambda.I parametri generici non sono consentiti nelle espressioni lambda.
Esempio
Di seguito è riportato un esempio di espressione lambda che scrive un valore nella console. L'esempio mostra sia la sintassi dell'espressione lambda a riga singola che quella su più righe per una subroutine. Per altri esempi, vedere Espressioni lambda.
Dim writeline1 = Sub(x) Console.WriteLine(x)
Dim writeline2 = Sub(x)
Console.WriteLine(x)
End Sub
' Write "Hello".
writeline1("Hello")
' Write "World"
writeline2("World")