Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   quitar elemento de un array dinámico (https://www.clubdelphi.com/foros/showthread.php?t=35404)

elcigarra 08-09-2006 21:43:27

quitar elemento de un array dinámico
 
Tengo un array dinámico de elementos tipo record. Existe alguna función (preestablecida o no tanto) que permita eliminar un elemento del interior y que el array quede con length = (length - 1) ?

delphi.com.ar 08-09-2006 23:12:25

Yo evaluaría utilizar otro tipo de listas, algun hash list, una colección, un TList...
Quitar un elemento que no sea el último en un array dinámico, puede ser algo "pesado" para el procesador. (pensando en un procedimiento "afinado").. no puedes tildar este elemento como borrado??

jachguate 08-09-2006 23:30:34

Como ya dijo Fede, esto puede ser pesado para el procesador :)

Código Delphi [-]
procedure QuitarElemento(const IndiceAQuitar Integer; var Arreglo: Array of integer);
var
  I: Integer;
begin
  for I := IndiceAQuitar to high(Arreglo) - 1 do
    Arreglo[i] := Arreglo[I + 1];
  SetLength(Arreglo, Length(Arreglo) - 1];
end;

Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 22:49:20.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi