Visual Basic.NET - Funciones

 
Vista:
sin imagen de perfil
Val: 1
Ha disminuido su posición en 12 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Funciones

Publicado por Jorge (3 intervenciones) el 21/01/2017 00:41:40
Buen día

Pido un poco de orientación ya que no entiendo muy bien el tema de las Funciones en VB .NET.

Entiendo que los métodos serán invocados por los objetos, por lo tanto, los métodos ejecutaran el bloque de código, por ejemplo

'Método

Sub Imp_Saludo()

System.Console.WriteLine("Hola Mundo")

End Sub



'Objeto

Dim _Suludo As Class = New Class

_Saludo.Imp_Saludo()

...

Según yo, al ejecutar el programa se imprimirá el texto "Hola Mundo", esta es la respuesta al objeto que invoco el método, lo que no entiendo es que si fuese una "Función", a donde retorna la información ("el dato") e leído y escuchado en Internet que las funciones retornan un dato, eso es lo que no entiendo... a donde lo retornan?, alguna variable almacena el dato que se retorna?

Según yo la diferencia entre un método y una función, es que esta ultima si retorna un tipo de dato especificado en la declaración de la función y el método no retorna nada solo ejecuta su bloque de código.

Podrían ayudarme con este tema?... se los agradezco

Saludos,,,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Funciones

Publicado por Miguel (476 intervenciones) el 21/01/2017 09:50:08
Pues sí, ambas se podrían decir que son funciones, pero cuando quieres obtener algún dato lo tienes que hacer de otra forma, ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
''Sin regresar datos
Sub Sumar(numero1 As Integer, numero2 As Integer)
    Dim resultado As Integer = numero1 + numero2
    Console.WriteLine("La suma de " & numero1 & " y " & numero2 & " es: " & resultado)
End Sub
 
 
''Regresando datos
Function Sumar(numero1 As Integer, numero2 As Integer) As Integer   ' Aquí indicamos el tipo de dato a regresar
    Dim resultado As Integer = numero1 + numero2
    Return resultado
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Diego
Val: 605
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Funciones

Publicado por Diego (190 intervenciones) el 21/01/2017 10:53:24
Hola Jorge, efectivamente, hasta donde yo se, la diferencia entre un procedimiento y una funcion es nada mas que esa misma. Las funciones retornan información, una procedimiento no.

Cuando vas a utilizar una funcion, lo que debes hacer al llamarla es igualarla a una variable u objeto del mismo tipo que la funcion retorma, despues vos haces una lectura y en base a eso sigue la logica de tu programa de un modo u otro.

Te pongo un ejemplo:

PROCEDIMIENTO SUMA

1
2
3
4
Private sub Suma(ByVal a as integer, ByVal b as Integer)
     Dim resultado as integer = a + b
     Console.Wrtiteline(resultado)
End Sub

Para llamar a ese procedimiento vos solo escribis:

1
Suma(3, 5) '<<<<<<<<<<<<< Va a mostrar un 8 en pantalla >>>>>>>>>>>>>>>

Ejemplo de FUNCION SUMA:

1
2
3
4
Private Function Suma(ByVal a as integer, ByVal b as Integer) as Integer
     Dim resultado as integer = a + b
     return(resultado)
End Sub

En este caso, pasas los mismos parametros pero si querés que se muestren por pantalla tendrías que hacer lo siguiente al llamarlo

1
2
3
4
5
6
7
8
Console.WriteLine(Suma(3, 5)) '<<<<<<<<<<<<<< Eso va a imprimir el mismo resultado en pantalla >>>>>>>>>>>>>>>>
 
'O podes almacenarlo en una variable entera, y evaluar su contenido posteriormente
Dim resultadoDeLaSuma as Integer = Suma(10,15)
 
If resultadoDeLaSuma > 10 then
   Console.WriteLine("El resultado es mayor que 10")
End If

Bueno, espero haber sido claro.
Saludos y +Bytes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar