Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi dynamisch auf Componenten zugreifen (https://www.delphipraxis.net/135888-dynamisch-auf-componenten-zugreifen.html)

Andreas L. 19. Jun 2009 16:14

Re: dynamisch auf Componenten zugreifen
 
Zitat:

Zitat von mirage228
Zitat:

Zitat von DeddyH
Ich will nicht die Hand dafür ins Feuer legen, aber m.W.n. prüft as erneut mit is den Typ ab und wirft im Fehlerfall eine Exception. Ein harter Typecast ist daher vermutlich etwas schneller.

Kannst Du ruhig tun. So ists nämlich ;)

Wir reden hier aber von wenigen Millisekunden, oder? Also für ein normales, nicht zeitkritisches Programm ist es egal welche der beiden Varianten man verwendet. BTW finde ich die Variante mit as besser lesbar.

DeddyH 19. Jun 2009 16:18

Re: dynamisch auf Componenten zugreifen
 
Natürlich geht es nicht um Stunden. Wenn ich zwingend ein Objekt eines bestimmten Typs erwarte, benutze ich auch as, gehe ich aber alle Objekte durch und benutze is zur "Filterung", mache ich anschließend einen harten Typecast. Damit bin ich bislang immer gut gefahren, aber das ist sicherlich zu einem gewissen Grad Geschmackssache.

mirage228 19. Jun 2009 16:21

Re: dynamisch auf Componenten zugreifen
 
Zitat:

Zitat von Andreas L.
Wir reden hier aber von wenigen Millisekunden, oder? Also für ein normales, nicht zeitkritisches Programm ist es egal welche der beiden Varianten man verwendet. BTW finde ich die Variante mit as besser lesbar.

Das mag sein. Es ist dennoch eine völlig unnötige Redundanz in diesem Fall, wozu auch zwei mal einen "is" Aufruf erledigen lassen (einmal explizit und einmal implizit)?
Wie DeddyH schon schrieb, wenn man wirklich einen bestimmten Typ erwartet und zu diesem casten möchte, dann sollte man "as" nehmen, in diesem Fall ist jedoch der Ansatz mit "is" und dem harten Typecast vorzuziehen.

DeddyH 19. Jun 2009 16:26

Re: dynamisch auf Componenten zugreifen
 
Vergleichbar mit
Delphi-Quellcode:
if Assigned(Obj) then
  Obj.Free;
(Das hab ich früher auch so gemacht :oops: )


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:22 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz