versión 2004.1 (Modificado)
Puede pasar un array como parámetro a un comando 4D o a la rutina de un plug-in 4D. Por el contrario, no puede pasar un array como parámetro a un método de usuario. La alternativa es pasar un puntero al array como parámetro del método.
Nota: puede pasar arrays de proceso e interproceso como parámetros, pero no arrays locales.
Estos son algunos ejemplos.
Miremos este ejemplo:
If ((0<atNombres)&(atNombres<Size of array(atNombres)) ` Si es posible, seleccione el elemento siguiente al elemento seleccionado atNombres:=atNombres+1 End if
Si necesita hacer lo mismo para 50 arrays diferentes, puede evitar escribir lo mismo 50 veces, utilizando el siguiente método de proyecto:
` Método de proyecto SELECCIONAR SIGUIENTE ELEMENTO ` (Puntero) SELECCIONAR SIGUIENTE ELEMENTO ` ( -> Array ) SELECCIONAR SIGUIENTE ELEMENTO C_POINTER ($1) If ((0<$1->)&($1-><Size of array($1->)) $1->:=$1->+1 ` Si es posible, seleccione el elemento siguiente del elemento seleccionado End if
Luego, puede escribir:
SELECCIONAR SIGUIENTE ELEMENTO (->atNombres) ` ... SELECCIONAR SIGUIENTE ELEMENTO (->asCodigosPostales) ` ... SELECCIONAR SIGUIENTE ELEMENTO (->aiIDRegistros) ` ... y así sucesivamente
El siguiente método de proyecto devuelve la suma de todos los elementos de un array numérico (Entero, Entero largo, o real):
` Suma Array
` Suma Array ( Puntero)
` Suma Array ( -> Array )
C_REAL ($0)
$0:=0
For ($vlElem;1;Size of array($1->))
$0:=$0+$1->{$vlElem}
End for
Luego, puede escribir:
$vlSum:=Suma Array(->arSalarios) ` ... $vlSum:=Suma Array (->aiDefectCounts) ` .. $vlSum:=Suma Array (->alPoblacion)
El siguiente método de proyecto pasa a mayúsculas todos los elementos de un array alfa o texto:
` MAYUSCULAS ARRAY
` MAYUSCULAS ARRAY ( Puntero )
` MAYUSCULAS ARRAY ( -> Array )
For ($vlElem;1;Size of array($1->))
If ($1->{$vlElem}#"")
$1->{$vlElem}:=Uppercase($1->{$vlElem}[[1]])+Lowercase(Substring($1->{$vlElem};2))
End if
End for
Luego, puede escribir:
MAYUSCULAS ARRAY (->atTemas ) ` ... MAYUSCULAS ARRAY (->asApellidos )
La combinación de arrays, punterors, y estructuras de bucles, tales como For... End for, le permite escribir muchos métodos de proyecto útiles para manejar arrays.
Ver también
Arrays, Arrays y el lenguaje 4D.