Un procedimiento Function es una serie de instrucciones de Visual Basic incluidas entre las instrucciones Function y End Function. El procedimiento Function realiza una tarea y luego devuelve el control al código de llamada. Cuando devuelve el control, también devuelve un valor al código de llamada.
Cada vez que se llama al procedimiento, se ejecutan sus instrucciones desde la primera instrucción ejecutable tras la instrucción Function hasta la primera instrucción End Function, Exit Function o Return encontrada.
Puede definir un procedimiento Function en un módulo, una clase o una estructura. Es Public de manera predeterminada, lo que significa que es posible llamarlo desde cualquier lugar de la aplicación que tenga acceso al módulo, la clase o la estructura en que se ha definido.
Un procedimiento Function puede tomar argumentos, como constantes, variables o expresiones, que el código de llamada le pasa.
Sintaxis de declaración
La sintaxis para declarar un procedimiento Function es la siguiente:
VB
[Modifiers] Function FunctionName [(ParameterList)] As ReturnType
[Statements]
EndFunction
Los modificadores pueden especificar el nivel de acceso e información sobre la sobrecarga, la invalidación, el uso compartido y el sombreado. Para obtener más información, vea Function (Instrucción).
Declare cada parámetro de la misma manera en que declararía Subprocedimientos.
Tipo de datos
Cada procedimiento Function tiene un tipo de datos, igual que cada variable. La cláusula As especifica este tipo de datos en la instrucción Function y determina el tipo de datos del valor que la función devuelve al código de llamada. Las siguientes declaraciones de ejemplo ilustran esto.
VB
Function Yesterday() AsDateEndFunctionFunction FindSqrt(radicand AsSingle) AsSingleEndFunction
El valor que un procedimiento Function devuelve al código de llamada se conoce como valor devuelto. El procedimiento devuelve este valor de una de estas dos maneras:
Usa la instrucción Return para especificar el valor devuelto y devuelve el control inmediatamente al programa que realiza la llamada. Esto se ilustra en el siguiente ejemplo:
VB
Function FunctionName [(ParameterList)] As ReturnType
' The following statement immediately transfers control back' to the calling code and returns the value of Expression.Return Expression
EndFunction
Asigna un valor a su propio nombre de función en una o varias instrucciones del procedimiento. El control no se devuelve al programa que realiza la llamada hasta que se ejecuta una instrucción Exit Function o End Function. Esto se ilustra en el siguiente ejemplo:
VB
Function FunctionName [(ParameterList)] As ReturnType
' The following statement does not transfer control back to the calling code.
FunctionName = Expression
' When control returns to the calling code, Expression is the return value.EndFunction
La ventaja de asignar el valor devuelto al nombre de la función es que el control no se devuelve del procedimiento hasta que encuentra una instrucción Exit Function o End Function. Esto permite asignar un valor preliminar y ajustarlo más adelante si fuera necesario.
Para obtener más información sobre la devolución de valores, vea Function (Instrucción). Para obtener información sobre la devolución de matrices, vea Matrices.
Sintaxis de llamada
Para invocar a un procedimiento Function, incluya su nombre y argumentos en el lado derecho de una instrucción de asignación o en una expresión. Debe proporcionar valores para todos los argumentos que no son opcionales, y hay que incluir la lista de argumentos entre paréntesis. Si no se proporciona ningún argumento, opcionalmente se pueden omitir los paréntesis.
La sintaxis de una llamada a un procedimiento Function es la siguiente.
lvalue=functionname[(argumentlist)]
If ((functionname[(argumentlist)] / 3) <=expression) Then
Cuando se llama a un procedimiento Function, no es necesario usar su valor devuelto. Si no se hace, se realizan todas las acciones de la función, pero se omite el valor devuelto. MsgBox a menudo se llama de esta manera.
Ilustración de declaración y llamada
El procedimiento Function siguiente calcula el lado más largo, o hipotenusa, de un triángulo rectángulo, dados los valores de los otros dos lados.
El origen de este contenido se puede encontrar en GitHub, donde también puede crear y revisar problemas y solicitudes de incorporación de cambios. Para más información, consulte nuestra guía para colaboradores.
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios:
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.