Ver Mensaje Individual
  #9  
Antiguo 28-05-2018
Avatar de duilioisola
[duilioisola] duilioisola is online now
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Disclaimer: Esto es una suposición mia. No conozco la implementación de arrays dinámicos.

El problema debe estar en que un array reserva memoria desde una posición en adelante.
En el caso de arrays dinámicos, la segunda dimension, seguramente, serán punteros a otras posiciones de memoria que no serán contiguas.
Supongo que podrías hacer un for con la primera dimensión e inicializar la segunda con FillChar.

Código:
x Memoria libre
0 Memoria utilizada por la estructura
P Puntero
Estatico : array [3, 3]  -->  Memoria: xxxx[000000000]xxxxxxxxx
Dinámico : array [3, 3]  -->  Memoria: xxxx[PPP]xxxx[000]xxx[000]xxx[000]
                                            ||+------^       ^       ^
                                            |+---------------+       |
                                            +------------------------+
Código Delphi [-]
var
 cc : array of array of real;
...
  SetLength(cc, numX, numY);
...
  for i := 0 to numX-1 do
     FillChar(cc[numX], SizeOf(cc[numX]), 0);
Responder Con Cita