Ver Mensaje Individual
  #4  
Antiguo 28-05-2018
iMia iMia is offline
Miembro
 
Registrado: jul 2010
Posts: 141
Reputación: 14
iMia Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
No conozco como es la estructura de memoria interna de un array, pero si es como los strings, el primer byte dice la longitud y si lo rellenas con 0 se volverá un array "vacio".
También puede ser que se trate de un caracter especial al final de cada "subarray" como el \n en C.

¿Por qué no lo inicializas de mas forma natural a delphi?
Si no son millones de celdas en el array, no creo que tome un tiempo excesivo...

Código Delphi [-]
var
  cc : array of array of real;
...
  SetLength(cc, numX, numY);
...
  // Inicializa valores a 0 en ambas dimensiones
  for j := 0 to numY - 1 do begin
    for i := 0 to numX - 1 do begin
      cc[i-1, j-1] := 0;
...
¡Cuidado!...
Si en el for limitas a numX-1 o pred(numX) , luego en la asignación no hace falta el cc[i-1,y-1] ya que en la primera pasada daría error... indices [-1,-1] y el último valor no quedaria inicializado... (pero no llega por el error inicial...

Código Delphi [-]
var
  cc : array of array of real;
...
  SetLength(cc, numX, numY);
...
  // Inicializa valores a 0 en ambas dimensiones
  for i := 0 to pred(numX) do 
    for j := 0 to pred(numY) do 
      cc[i, j] := 0;  // Incorrecto: cc[i-1,j-1] := 0
...
Responder Con Cita