Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: Unterschiedliche Objekte in einer Liste speichern

  Alt 15. Feb 2016, 10:33
Auch bei OwnsObjects=True kann man Free selber machen.

Delphi-Referenz durchsuchenTObjectList.Delete <> Delphi-Referenz durchsuchenTObjectList.Remove
Wie kommst du darauf?
Ich habs extra grade mal getestet, aber sowohl Delete als auch Remove ruft bei OwnsObjects = true den destructor auf:

Delphi-Quellcode:
type
  TTest = class
  public
    Dummy: Integer;
    destructor Destroy; override;
  end;

procedure TForm1.FormCreate(Sender: TObject);
var objLst: TObjectList;
    testObj: TTest;
begin
  objLst := TObjectList.Create(true);

  testObj:= TTest.Create;
  objLst.Add(testObj);

  objLst.Remove(testObj);
  //objLst.Delete(0);
end;

destructor TTest.Destroy;
begin
  Dummy := 123; // Breakpoint
  inherited;
end;
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat