Folgender Code:
Delphi-Quellcode:
Type
TTest = Class (TInterfacedObject, IInterface)
End;
procedure TForm1.Button1Click(Sender: TObject);
Var
l : TInterfaceList;
x : TTest;
begin
l := TInterfaceList.Create;
x := TTest.Create;
l.Add(x);
L.Remove(x);
x.free; // <<--- Peng. X ist schon freigeben. Wieso?
l.free;
end;
Kann mir jemand erklären, was ich falsch mache bzw. wo mein Denkfehler liegt?
Ich müsste doch jedes Objekt selbst wieder freigeben, was ich per Create erzeuge, oder nicht?