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.