Freigeben über


Der ByRef-Parameter '<Parametername>' kann in einem lambda-Ausdruck nicht verwendet werden

Aktualisiert: November 2007

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

Ein innerhalb von Sub oder einer Funktion deklarierter Lambda-Ausdruck kann keine ByRef-Parameter dieser Sub oder Funktion verwenden. Dieser Fehler wird beispielsweise durch den folgenden Code verursacht, da der ByRef-Parameter n im Lambda-Ausdruck verwendet wird.

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

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

'End Sub

Fehler-ID: BC36639

So beheben Sie diesen Fehler

  • Weisen Sie den ByRef-Parameter einer lokalen Variablen zu, und verwenden Sie die lokale Variable im Lambda-Ausdruck, wie im folgenden Code dargestellt:

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

Siehe auch

Konzepte

Lambda-Ausdrücke