Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Declara los parámetros y el código que definen una expresión lambda subrutina.
Sintaxis
Sub ( [ parameterlist ] ) statement
- or -
Sub ( [ parameterlist ] )
[ statements ]
End Sub
Partes
| Término | Definición |
|---|---|
parameterlist |
Opcional. Lista de nombres de variables locales que representan los parámetros del procedimiento. Los paréntesis deben estar presentes incluso cuando la lista está vacía. Para obtener más información, vea Lista de parámetros. |
statement |
Obligatorio. Una sola instrucción. |
statements |
Obligatorio. Lista de instrucciones. |
Observaciones
Una expresión lambda es una subrutina que no tiene un nombre y que ejecuta una o varias instrucciones. Puede usar una expresión lambda en cualquier lugar donde pueda usar un tipo de delegado, excepto como argumento para RemoveHandler. Para obtener más información sobre los delegados y el uso de expresiones lambda con delegados, vea Delegate Statement and Relax Delegate Conversion.
Sintaxis de expresión lambda
La sintaxis de una expresión lambda es similar a la de una subrutina estándar. Estas son las diferencias:
Una expresión lambda no tiene un nombre.
Una expresión lambda no puede tener un modificador, como
OverloadsoOverrides.El cuerpo de una expresión lambda de una sola línea debe ser una instrucción, no una expresión. El cuerpo puede constar de una llamada a un procedimiento secundario, pero no una llamada a un procedimiento de función.
En una expresión lambda, todos los parámetros deben tener tipos de datos especificados o todos los parámetros deben inferirse.
No se permiten parámetros y
ParamArrayopcionales en expresiones lambda.No se permiten parámetros genéricos en expresiones lambda.
Ejemplo
A continuación se muestra un ejemplo de una expresión lambda que escribe un valor en la consola. En el ejemplo se muestra la sintaxis de expresión lambda de una sola línea y de varias líneas para una subrutina. Para obtener más ejemplos, vea Expresiones 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")