![]() |
Delphi-Version: 10.3 Rio
Verständnisfrage Assigned vs nil
Hi zusammen
Was ist der Unterschied zwischen einer Abfrage eines Objektes auf Nil bzw. assigned?
Delphi-Quellcode:
Assigned mag zwar eleganter klingen, aber das ist wohl kaum dessen Sinn.
if Assigned(FSQLiteFolderList) then
if FSQLiteFolderList = nil then Gruss Delbor |
AW: Verständnisfrage Assigned vs nil
Ich glaube wenn man mit
Delphi-Quellcode:
etwas freigibt, ist
.Free
Delphi-Quellcode:
False und
Assigned()
Delphi-Quellcode:
auch False.
= nil
Deswegen setze ich manuell immer alles auf nil wenn ich etwas mit Free freigebe. Nagel mich nicht drauf fest. Bin mir unsicher. |
AW: Verständnisfrage Assigned vs nil
|
AW: Verständnisfrage Assigned vs nil
Zitat:
|
AW: Verständnisfrage Assigned vs nil
Zitat:
|
AW: Verständnisfrage Assigned vs nil
Hi zusammen
Danke für eure Antworten. Offenbar habe ich asssigned etwas überschätzt. Gruss Delbor |
AW: Verständnisfrage Assigned vs nil
Wenn du deine Variable nach Free immer manuell auch auf nil setzt ist alles gut.
|
AW: Verständnisfrage Assigned vs nil
Hi Dolly
Zitat:
Gruss Delbor |
AW: Verständnisfrage Assigned vs nil
Folgende Abfragen sind gleichwertig:
Delphi-Quellcode:
Erstere Variante ist IMO etwas einfacher zu lesen, wenn man gerade in einem Editor ohne Syntaxhervorhebung unterwegs ist, in dem auch noch die Schrift etwas klein ist und man so Schwierigkeiten hat, schmale Zeichen sauber zu erkennen. Aber grundsätzlich soll jeder das verwenden, was er/sie mag.
if Assigned(Objekt) then
if Objekt <> nil then Grüße Dalai |
AW: Verständnisfrage Assigned vs nil
Bei Abfragen von Objekten sind die Abfragen auf nil und auf Assigned gleichwertig. Anders sieht es z.B. bei Events aus. Man kann eine Event-Variable (so wie jeden Methodenzeiger) nicht auf nil abfragen. Dafür ist dann Assigned gedacht.
Delphi-Quellcode:
procedure TCustomForm.Paint;
begin if Assigned(FOnPaint) then FOnPaint(Self); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:45 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