Fórum Liberar memória no Tlist #265978

19/01/2005

0

Ola pessoal!

Bem! Eu gostaria de saber como liberar a memória ocupada por cada objeto(item) do TList? Ou seja.
Eu retiro este elemento da lista e logo em seguida libero a memória???
...eu olhei a documentação do delphi mas não entendi quando fala em setar a lista na propriedade capacity.

Por Ex: (sei la)

Obj:= Lista.items[0];
Obj.free;

Alguem pode me dar uma dica como retirar o elemento da lista e logo em seguida liberar a memória q o mesmo ocupava na lista.

vlw!


Fernando Piccini

Fernando Piccini

Responder

Posts

19/01/2005

Massuda

Alguem pode me dar uma dica como retirar o elemento da lista e logo em seguida liberar a memória q o mesmo ocupava na lista.
Acho que não entendi o que você quer... você quer liberar a memória utilizada pelo objeto ou a memória utilizada para armazenar na lista a referência para o objeto?


Responder

Gostei + 0

19/01/2005

Fernando Piccini

Bem! é o seguinte.

1)Gostaria de retirar o 1º elemento da lista certo;
O Tlist tem ométodo delete mas ele não libera a memória ocupada por este objeto.
E eu gostaria que fosse retirado e liberado a memória

obrigado pela atenção


Responder

Gostei + 0

19/01/2005

Massuda

O TList é basicamente uma lista de ponteiros... por isso ele não tem métodos que saibam o que é um objeto.

Para fazer o que você descreveu, usando um TList, é exatamente o que você escreveu:
var
  Obj: TObject;
  Lista: TList;

//...

Obj:= TObject(Lista.Items[0]); 
Lista.Items[0] := nil;
Obj.Free;

Talvez fosse interessante você considerar o uso de um TObjectList ao invés de um TList... O TObjectList é uma lista de TObjects e pode (se você assim desejar) destruir automaticamente os objetos contidos na lista quando eles não forem mais necessários.


Responder

Gostei + 0

19/01/2005

Massuda

Desculpe... eu li novamente o que você escreveu e me parece que este seria um exemplo mais adequado usando TList:
var 
  Obj: TObject; 
  Lista: TList; 

//... 

Obj:= TObject(Lista.First); 
Lista.Remove(Obj); 
Obj.Free;



Responder

Gostei + 0

19/01/2005

Fernando Piccini

Aos colegas que me ajudaram! Muito obrigado!

ah! Hoje tb comprei a revista do clubeDelphi!
Ela eh muito boa! Soh o preço neh meio salgado! heheheheh

abraço a todos


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar