Translate

miércoles, 13 de marzo de 2013

ARREGLOS COMO PARAMETROS


Para pasar un arreglo completo como parámetro a un procedimiento o a una función solo se manda el nombre del arreglo sin corchetes e índices, en el procedimiento o función que recibe solo se declara un arreglo del mismo tipo y se puede usar el mismo o diferente nombre del arreglo sin corchetes e índices.
Sin embargo es conveniente aclarar, que a diferencia de variables escalares normales visual Basic 2005 no genera una nueva variable en memoria ni tampoco copia los datos al arreglo que recibe, en su lugar visual Basic sigue usando los datos que están en el arreglo original, es por esta razón que cambios que se le hagan a los datos del arreglo que recibe realmente se esta haciendo al arreglo original como lo muestra el siguiente ejemplo:
Prog
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

' creando y cargando una lista local con 5 elementos

Dim lista1() As Integer = {1, 2, 3, 4, 5}

' pasandola a un procedimiento

' observar que se pasa sin paréntesis

Call PROC1(lista1)

' desplegando lista original y observar el resultado

Dim r As Integer

For r = 0 To 4

LISTA.Items.Add(lista1(r))

Next r

End Sub

Sub PROC1(ByVal vector)

' recibiendola con otro nombre y

' sumando a vector + 100

Dim r As Integer

For r = 0 To 4

vector(r) = vector(r) + 100

Next r

End Sub

corrida

Es de recordar que los cambios que le hagan al arreglo dentro del procedimiento se reflejaran en el arreglo original, es por esto que si se quiere modificar un arreglo en un procedimient función no hay necesidad de regresar ningún valor y por tanto no se ocupan funciones.
Solo para los casos que se quiera regresar algun dato especial del arreglo, por ejemplo regresar el primer dato par, o la suma de todos los elementos del arrreglo o el promedio de todos sus elementos, etc etc etc, solo en casos como estos se mandara una arreglo a una función.
TAREA PROGRAMACION VISUAL BASIC 2005
1.- Inicializar 10 edades en el principal(buttonclick) mandar la lista a un procedimiento que la convierte a meses, desplegar en principal.
2.- Capturar un arreglo de 7 ciudades en un primer procedimiento, sortear en un segundo y desplegar en un tercero, la lista original y la lista ordenada.




No hay comentarios:

Publicar un comentario