Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.005 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Variablen in Procedure freigeben.

  Alt 19. Mai 2009, 19:16
Oder benutze Schnittstellen, und aus diesem Code

Delphi-Quellcode:
procedure Timer;
var
  data : TmeineKlasse;
begin
  data := TmeineKlasse.create;
  try
    data.bla := bla;
    MachWas(data);
  finally
    data.Free;
  end;
end;
wird dieser, wieder etwas kompaktere, Code:

Delphi-Quellcode:
procedure Timer;
var
  Data: IMeinInterface;
begin
  Data := TMeineKlasse.Create;
  Data.Bla := Bla;
  MachWas(Data);
end;
Am Ende der Methode wird der Speicher automatisch wieder freigegeben - aber Vorsicht, wenn in MachWas eine Referenz auf das Data Objekt 'behalten' wird, kann es dennoch zu Speicherlecks kommen.
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat