Array dinamico como parametro de una función
Publicado por kikecg (33 intervenciones) el 07/11/2005 13:15:22
Hola a tod@s.
Me encuentro con el siguiente problema: He definido una serie de arrays dinamicos de una misma estructura
var
OpGiros, OpCambios, OpOrden: array of TRegistroRepOperaciones;
Necesito pasar esos arrays a diferentes funciones para que sean procesados en ellas y me sean devueltos con una cantidad de registros x.
La definición de una de las funciones es:
function DevuelveOperacionesGiros(BaseDatos: TIBDataBase; vFechaIni, vFechaFin: TDateTime;
vLista: TStringList; vTodos: Boolean; var dGiros: array of TRegistroRepOperaciones; var Error: TEstructuraError): Boolean;
Al utilizar el array dentro de la función, por ejemplo:
SetLength(dGiros, Length(dGiros) + 1);
obtengo un error de incompatibilidad de tipos. He probado a crear un array temporal del mismo tipo dentro de la función, y si me deja trabajar con el, pero en el momento de asignar al array original el contenido del temporal
dGiros := Temp;
obtengo el mismo error, esta vez especificando
Incompatible types: 'Array' and 'dynamic array'
¿Significa que no se pueden pasar arrays dinamicos como parámetros o que no estoy definiendo bien dicho parámetro?.
Muchas gracias.
Me encuentro con el siguiente problema: He definido una serie de arrays dinamicos de una misma estructura
var
OpGiros, OpCambios, OpOrden: array of TRegistroRepOperaciones;
Necesito pasar esos arrays a diferentes funciones para que sean procesados en ellas y me sean devueltos con una cantidad de registros x.
La definición de una de las funciones es:
function DevuelveOperacionesGiros(BaseDatos: TIBDataBase; vFechaIni, vFechaFin: TDateTime;
vLista: TStringList; vTodos: Boolean; var dGiros: array of TRegistroRepOperaciones; var Error: TEstructuraError): Boolean;
Al utilizar el array dentro de la función, por ejemplo:
SetLength(dGiros, Length(dGiros) + 1);
obtengo un error de incompatibilidad de tipos. He probado a crear un array temporal del mismo tipo dentro de la función, y si me deja trabajar con el, pero en el momento de asignar al array original el contenido del temporal
dGiros := Temp;
obtengo el mismo error, esta vez especificando
Incompatible types: 'Array' and 'dynamic array'
¿Significa que no se pueden pasar arrays dinamicos como parámetros o que no estoy definiendo bien dicho parámetro?.
Muchas gracias.
Valora esta pregunta


0