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;