Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: NaK-32 en 26 Febrero 2011, 15:12 pm



Título: ByVal y ByRef
Publicado por: NaK-32 en 26 Febrero 2011, 15:12 pm
Buenas a todos.
Bueno, estoy estudiando vb6 y estoy con ByVal y ByRef, y no entiendo nada de nada... de veras.
He buscado por google y no me entero de nada. ¿Alguien me podría echar una mano para entender estos conceptos? Ya que veo que son bastante importantes...

Muchísimas gracias de antemano.

Nak.


Título: Re: ByVal y ByRef
Publicado por: Sanlegas en 26 Febrero 2011, 16:22 pm
bien haber si te sirve un poco mi explicación.

ByVal = Por Valor
ByRef = Por Referencia

Por valor es cuando se llama a la función y al pasar este parametro/variable se copia un nuevo espacio en memoria con el mismo valor de la variable que usaste, asi si modificas dicha variable dentro de la función esta no cambiara su valor original.
Por referencia es cuando se llama a la función pero con el mismo puntero de la variable que usaste, asi cuando modificas la variable dentro de la función esta cambiara su valor en la variable original.

Un ejemplo seria:
Código
  1. Private Sub Form_Load()
  2. Dim A As String
  3. A = "Hola!!!"
  4. Call MiFuncionPorValor(A)
  5. MsgBox "El contenido de la variable ahora es: " & A
  6. Call MiFuncionPorReferencia(A)
  7. MsgBox "El contenido de la variable ahora es: " & A
  8. End Sub
  9. Public Function MiFuncionPorValor(ByVal MiVariable As String)
  10.    MsgBox "El contenido de la variable es: " & MiVariable, vbInformation
  11.    MiVariable = vbNull
  12. End Function
  13. Public Function MiFuncionPorReferencia(ByRef MiVariable As String)
  14.    MsgBox "El contenido de la variable es: " & MiVariable, vbInformation
  15.    MiVariable = vbNullString
  16. End Function


Título: Re: ByVal y ByRef
Publicado por: Psyke1 en 26 Febrero 2011, 16:36 pm
http://www.elguille.info/vb/vb_novatos.htm#novato05

DoEvents! :P


Título: Re: ByVal y ByRef
Publicado por: GhostLT en 26 Febrero 2011, 16:51 pm
Checale esta otra web de recursos vb
http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico4.htm#parametros-byval-byref (http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico4.htm#parametros-byval-byref)
Saludos!!!


Título: Re: ByVal y ByRef
Publicado por: BlackZeroX en 26 Febrero 2011, 23:04 pm
byval --> realisa una copia de lo que le pases
byref --> trabaja directamente sobre el original por ende lo que le hagas a la variable surtira efectos sobre la original que pasaste por parametro!¡.

Dulces Lunas!¡.


Título: Re: ByVal y ByRef
Publicado por: NaK-32 en 27 Febrero 2011, 00:56 am
okk, muchas gracias a todos gente, ya lo entendí :)

Así es un gusto estudiar vb6