Acabo de leer un poco en
delphi.about sobre esta declaración
File of, que sinceramente desconocía. Según leí, puedes utilizar
File of con arreglos dinámicos.
El problema que veo es que quieres definir una nueva clase que sería nada más que un arreglo dinámico. Esto no se puede hacer. Lo que debes hacer es crear el arreglo dinámico como variable (al igual que otro cualquier arreglo dinámico) y luego asignarle su longitud con la rutina
SetLength. Deduzco, que no es necesario utilizar SetLength cuando estés abriendo un archivo, sino sólo para guardarlo. Más o menos creo que sería así:
Código Delphi
[-]
procedure PasarAArchivo(const Alto, Ancho: Integer);
var
Arreglo: Array of array of Integer;
OIFile: File of Array of array of Integer;
I: Integer;
begin
SetLength(Arreglo, Alto, Ancho);
try
AssingFile(IOFile, 'archivo_a_guardar.dat');
Rewrite(IOFile);
for I := 0 to Max(Arreglo) do
Write(IOFile, Arreglo[i]);
finally
CloseFile(IOFile);
end;
end;
Creo que también deberías considerar utilizar registros en lugar de arreglos polidimencionales. Los registros son más fáciles de leer y entenderse para el programador.