![]() |
variant freigeben / nullen?
servus,
habe einen kleinen record
Delphi-Quellcode:
dieser wird oft verwendet. cvValue kann ein int/string/float/time etc sein.
TCheckValue = record
cvName : string; cvValue : variant; end; TCheckValues = array of TCheckValue; Kein Objekt. Muss ich den dyn. array am ende wieder "leeren" bzw. die länge wieder auf 0 setzen um sauber zu programmieren. Einen speicherfresser gibt es ja nicht...
Delphi-Quellcode:
gruß
for i:=Low(Acr) to High(Acr) do
ACR[i].cvValue := 0; SetLength(Acr, 0); |
Re: variant freigeben / nullen?
dere Wert für leer ist null
|
Re: variant freigeben / nullen?
Zitat:
|
Re: variant freigeben / nullen?
Variants, dyn. Arrays, Interfaces und Strings werden von Delphi automatisch freigegeben ... das gilt für alle Typen, wofür Delphi auch eine automatische Initialisierung (sowie die gewünschte Finalisierung) besitzt.
Dieses auch in mehreren Ebenen von diesen genannten Typen. Ein Variant in einem dyn. Array würde also freigegeben, aber ein Variant in einem Pointer nicht (solange dieser Pointer nicht ordnungsgemäß manuell freigegeben wird, z.B. via Dispose oder Finalize+FreeMem) |
Re: variant freigeben / nullen?
supi thx...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 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