Tecnología

Inicio

Diferencia entre las funciones y subrutinas en Visual Basic

Diferencia entre las funciones y subrutinas en Visual Basic


Si usted está pensando en desarrollar una aplicación de Visual Basic, una de las primeras cosas que hay que saber es la diferencia entre las funciones y subrutinas, también conocidos como procedimientos sub. Se puede pensar en subrutinas y funciones como programas en miniatura. A diferencia de las variables, funciones y subrutinas no tienen ningún dato; en cambio, sostienen código de VB. Si desea devolver datos, a continuación, utilizar una función - de lo contrario, utilizar una subrutina. Puede llamar a las funciones de subrutinas y viceversa.

Definición

Una subrutina se compone de una serie de declaraciones de Visual Basic, encerrados por la declaraciones "End Sub" "Sub" y. Un procedimiento de función también se compone de una serie de instrucciones de Visual Basic, pero debe ser encerrado por el "Fin declaraciones de función" "Función" y. Todo el código ejecutable debe estar dentro de una subrutina y tanto un procedimiento de función. Ambos se pueden definir en módulos, clases y estructuras.

Declaración

Se declara una subrutina de una manera similar a como lo haría declarar una variable, especificando el nombre del parámetro y el tipo de datos. Puede especificar el mecanismo de paso de parámetros tales como "ByVal" o "ByRef". Cada parámetro se trata como una variable local a la subrutina, lo que significa que el tiempo de vida del parámetro es el mismo que el del procedimiento. En una función, se puede declarar el tipo de datos del valor que devuelve como "entero" o "doble". Si no se especifica el "tipo de retorno", la función devolverá un tipo de datos "objeto".

datos de regresar

En VB, puede pasar un argumento a un procedimiento (subrutina o función) por valor o por referencia al especificar las palabras clave "ByRef" "ByVal" o. De forma predeterminada una subrutina y una función tratan a sus argumentos por valor, lo que significa que el procedimiento no puede modificar el contenido del elemento variable en el código de llamada. Una función devolverá un valor asignando el valor al nombre de la función, o incluirlo en la declaración "Return". Una subrutina normalmente no devuelve un valor, pero se puede definir como un argumento "ByRef" para volver un valor como parámetro.

Ejemplo

El siguiente es un ejemplo de una subrutina:

Sub tellOperator (tarea ByVal como secuencia)

Dim stamp As Date

sello = TimeOfDay ()

MsgBox ( "Inicio" y tarea y "a" & CStr (sello))

End Sub

El siguiente es un ejemplo de una función:

Función myFunction (ByVal j As Integer) As Double

Return 3.87 * j

End Function