![]() |
Klasse Instantiiert??
wie kann ich abtesten ob ne klasse nicht instantiiert ist?
Delphi-Quellcode:
... das funzt net
var myclassVar: TMyClass
begin if myClassVar = nil then |
Re: Klasse Instantiiert??
Also ich mache das eigentlich immer so :gruebel: Du musst nur beim zerstören der Instanz sicherstellen, das myClassVar wieder nil ist ;-)
Delphi-Quellcode:
...:cat:...
FreeAndNil(myClassVar);
|
Re: Klasse Instantiiert??
Das ist übrigens die einzigst sichere Methode.
Gruß Hagen |
Re: Klasse Instantiiert??
Hallo,
ich denke der General hat zu wenig Source geliefert.
Delphi-Quellcode:
geht nicht, da MyClass eine lokale Instanz ist.
procedure Form1.xxx;
var MyClass : TMyClass; begin If MyClass<>Nil then ... end; hingegen
Delphi-Quellcode:
funktioniert, da das Form beim Create alle Felder auf 0 setzt.
type
TForm1 = class(TForm) private { Private-Deklarationen } FMyClass : TMyClass; public { Public-Deklarationen } end; procedure Form1.xxx; begin If FMyClass<>Nil then ... end; |
Re: Klasse Instantiiert??
Ich will, bevor ich die Klasse zerstöre, erstmal überprüfen ob sie instantiiert wurde
|
Re: Klasse Instantiiert??
Das ist ja auch korrekt - aber dann kannst Du einfach den Aufruf über FreeAndNil nutyen, der erledigt u.a. genau das ;-)
...:cat:... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz