Como liberar memória??? .Free??

Delphi

27/04/2004

Olá pessoal!

Minha dúvida é duvida de principiante...hehehe. Não esou ainda muito acostumado com o delphi. Será que alguém poderia me dizer como funciona esses esquemas de liberar memória. Tipo quando eu crio um form e depois quando feho ele eu tenho que executar form.free??
Se alguem puder me dar uma explicação seria ótimo.....

Agradeçoa a tenção de todos

[]´s
Samuel Gubert


Sgubert

Sgubert

Curtidas 0

Respostas

Rafael.valler

Rafael.valler

27/04/2004

Na hora de chamar o form:

if form1 = NIL then //testa se o form já existe
form1:= Tform1.create(self); // se ñ existe cria o form apartir deste
form1.showmodal; // abre o form
FreeAndNil(form1); //libera da memória e atribui NIL

Espero ter ajudado!


GOSTEI 0
Flaviosan

Flaviosan

27/04/2004

sgubert, tenta assim:
            try
               Application.CreateForm(TForm1, Form1);
               Form1.ShowModal;
            finally
               Form1.Free;
            end;

Epero ter ajudado.


GOSTEI 0
Sgubert

Sgubert

27/04/2004

Ajudou sim amigo.....

Mas gostaria de saber, masi em teoria como funciona esse negocio de liberar a memória e quando devo fazer isso em delphi.
Até então programava em JAVA e este por si só já faz a liberação da memória sozinho

Agradeço a atençao

[]´s
Samuel Gubert


GOSTEI 0
Flaviosan

Flaviosan

27/04/2004

Tenho uma pequena noção de java e sei que a liberação de memoria era feita pelo garbage colector, só que o delphi ate a versão 7 nao tem isso, só o delphi 8 que tem algo parecido por causa do .net .
Olha, eu libero toda vez que tenho certeza que não vou mais precisar do form. Se existe alguma ocasião especial para fazer isso, eu não sei.
Espero não ter ´complicado´ ao invés de ´explicado´.
Abraços.


GOSTEI 0
Sgubert

Sgubert

27/04/2004

Legal flaviosan!!

Claro que ´explicou´ sim......
valeu pela ajuda.......
Brigadão

Abraços
Samuel


GOSTEI 0
POSTAR