Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.316 Beiträge
Delphi 12 Athens
|
AW: Doppeltes Create?
7. Jun 2010, 18:41
Delphi-Quellcode:
LT:=TBintree.Create;
...
LT.create(TString.create(BlattL));
Wenn das/ein instanziertes Objekt in LT existiert, dann kann man einen Konstuctor auch über eine Objektinstanz erstellen und nicht nur über die Klasse.
Allerdings wird hier ein weiteres Objekt erstellt, welches im Nirvana verschwindet ... Ergo sollte ein Speicherleck entstehen.
Nee, wird doch als Methode aufgerufen
Delphi-Quellcode:
type
TMyClass = class
constructor Create;
end;
constructor TMyClass.Create;
begin
ShowMessage(IntToStr(Integer(Self)));
end;
var
C: TMyClass;
begin
C := TMyClass.Create;
C.Create;
C := nil;
C.Create;
end;
Ein Therapeut entspricht 1024 Gigapeut.
Geändert von himitsu ( 7. Jun 2010 um 18:48 Uhr)
|