Fórum Apagar um elemento de um ARRAY #335872
09/01/2007
0
arrayTeste
elemento-1 elemento-2 elemento-3 elemento-4 elemento-5
Como eu faço para apagar o elemento-3?
Em php existe a função [b:93a91389b4]unset(arrayTeste[2])[/b:93a91389b4]... Tem algo parecido para Delphi?
Valdiney.ferreira
Curtir tópico
+ 0Posts
09/01/2007
Massuda
Gostei + 0
09/01/2007
Valdiney.ferreira
Massuda.
Não preciso de mostrar código não cara. É muito simples...
Imagine um variavel do tipo array of string.
Agora adicione dentro desta var 5 elementos...
Pronto.
Agora eu quero apagar o 3 elemento que esta dentro deste array, no casso o array indexado de 2.... -> array[2]....
Eu quero apagar somente ele e deixar os outros elementos!
....
[b:3cd922b7a2]Mas segue um exemplo, onde eu adiciono os elementos dentro do array:[/b:3cd922b7a2]
var
Form1: TForm1;
arrayTeste : array of string;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
n:integer;
begin
for n:=0 to 5 do
begin
//Incrementa o Array...
SetLength(arrayTeste,(Length(arrayTeste)+1));
//Assimila o valor do nome da foto ao array...
arrayTeste[(Length(arrayTeste) -1)] := ´texto-´+ IntToStr(n) 13;
end;
end;
Como o exemplo assim se você der um ShowMessage no arrayTeste... tera como resposta:
texto-0 texto-1 texto-2 texto-3 texto-4 texto-5
Agora eu preciso apenas apagar o elemento [b:3cd922b7a2]texto-3[/b:3cd922b7a2] e deixar o restante no array.
Espero que tenha esclarecido a minha dúvida.
Gostei + 0
09/01/2007
Valdiney.ferreira
System.Move(arrayTeste[4], arrayTeste[3],(Length(arrayTeste) - 4) * SizeOf(string) + 1) ; Finalize(arrayTeste[5]);
Com este exemplo eu conseguir aprimorar uma ideia que tive e acabou dando certo!
Valeu pela ajuda!
Abraços
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)