Impossibile utilizzare il parametro 'ByRef' '<nomeparametro>' in un'espressione lambda

Aggiornamento: novembre 2007

'ByRef' parameter '<parametername>' cannot be used in a lambda expression

Un'espressione lambda dichiarata all'interno di una Sub o di una funzione non può utilizzare alcun parametro ByRef della Sub o della funzione. Nel codice seguente, ad esempio, viene generato questo errore perché nell'espressione lambda viene utilizzato il parametro ByRefn.

'' Not valid. 
'Sub ExampleSub(ByRef n As Integer)

'    Dim lambda = Function(p As Integer) p + n

'End Sub

ID errore: BC36639

Per correggere l'errore

  • Assegnare il parametro ByRef a una variabile e utilizzare la variabile locale nell'espressione lambda, come mostrato nel codice seguente:

    Sub ExampleSub(ByRef n As Integer)
    
        Dim temp = n
        Dim lambda = Function(p As Integer) p + temp
    
    End Sub
    

Vedere anche

Concetti

Espressioni lambda