Fórum functions e procedures criando objetos #356351
01/04/2008
0
galera o om uma duvida na contrucao de functions e procedures criando objetos neles ...
exemplo:
procedure Paulo;
var
a: TStringLIst;
begin
a := TStringLIst.Create;
end;
vejem soh no caso como eh uma variavel da procedure qndo a procdure encerrar ela é destruida ?
e na function ?
e caso o resultado seje a function como ponho o stringlist.free (libero ele)
exemplo:
procedure Paulo;
var
a: TStringLIst;
begin
a := TStringLIst.Create;
end;
vejem soh no caso como eh uma variavel da procedure qndo a procdure encerrar ela é destruida ?
e na function ?
e caso o resultado seje a function como ponho o stringlist.free (libero ele)
Pauloc
Curtir tópico
+ 0
Responder
Posts
01/04/2008
Macario
Olá.
Se você esta se referindo ao escopo do Objeto, ele sendo criado dentro da Function ou Procedure, em tese será liberado ao final do escopo.
Mas por segurança faça a liberação.
8)
Se você esta se referindo ao escopo do Objeto, ele sendo criado dentro da Function ou Procedure, em tese será liberado ao final do escopo.
Mas por segurança faça a liberação.
8)
Responder
Gostei + 0
01/04/2008
Rodc
Na verdade ao chegar ao fim da procedure o programa só desintanciará o ponteiro para o objeto TStringLIst. No caso, a variável a.
Tudo que você é instanciado com Create() é preciso destruir com Free(). No caso, a.Free(). Do contrário a memória só será desalocada quando o programa encerrar.
Tudo que você é instanciado com Create() é preciso destruir com Free(). No caso, a.Free(). Do contrário a memória só será desalocada quando o programa encerrar.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)