Einzelnen Beitrag anzeigen

Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Implementierung eines Interfaces

  Alt 18. Jun 2006, 16:22
Zitat von Basilikum:
Zitat von Dax:
gibt es sich automatisch frei: GC für faule -> ausschalten wenn möglich.
kannst du zu dieser Aussage eine Erklärung/Begründung geben ?
Delphi interfaces sind COM interfaces:
Wenn eine Interface-Instanz aus dem Scope rennt oder eine Referenz entfernt wird, veringert sich ihr Referenzzähler.
Erreicht er 0 wird die Instanz zerstört.
Wenn du nicht von TInterfacedObject erbst, kannst du selbst entscheiden, ob du die Referenzen zählen willst. TComponent zum Beispiel hat die Referenzzählung abgeschalten.

Deshalb reicht das hier:
Delphi-Quellcode:
var
  instance : IMyInterface;
begin
  instance := SomeImplementingClass.Create();
  instance.DoSomething();
end;
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat