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 TStrings (https://www.delphipraxis.net/10075-tstrings.html)

Christian Seehase 11. Okt 2003 19:30

Re: TStrings
 
Moin Jens,

da erwarte ich das gleiche.
Es gibt ja auch TBrush.Assign und TFont.Assign, um ein Objekt in ein anderes zu kopieren.

Fällt Dir ein Beispiel ein, wo := sich verhält wie Assign?

Jens Schumann 12. Okt 2003 09:19

Re: TStrings
 
Hallo Christian,
ja da habe ich ein paar Beispiele.
Nämlich genau die Beispiele, die ich oben angeführt habe. Schau mal in die VCL-Sourcen.
Sobald ein Objekt/Komponente ein anderes Objekt als Eigenschaft hat sollte man davon ausgehen, dass := im Setter der Eigenschaft mit Assign realisiert ist.
Das klingt für mich auch logisch. Denn das Objekt/Komponente ist der Herrscher über seine Eigenschaften. Wenn man jetzt mit := die Eigenschaft auf einen anderes gleichartiges Objekt zeigen lassen kann, würde das im constructor erzeugte Objekt für diese Eigenschaft frei im Heap schweben.
Es sei denn, man ruft vor Free auf. Die Gefahr ist jedoch zu groß, dass man das vergißt.

Christian Seehase 12. Okt 2003 12:50

Re: TStrings
 
Moin Jens,

stimmt, hast recht :? :mrgreen:

Zitat:

Zitat von Jens Schumann
Das klingt für mich auch logisch.

für mich allerdings nicht, da dieses Verhalten für mich das Vorhandensein der Methode Assign ad absurdum führt.
Wie Du ja schon selber sagst, kann man ja vorher free aufrufen.

Zitat:

Zitat von Jens Schumann
Es sei denn, man ruft vor Free auf. Die Gefahr ist jedoch zu groß, dass man das vergißt.

Daran muss man aber immer denken, wenn man ein Objekt erzeugt, deshalb halte ich die Gefahr nicht für sehr gross.

Nun ja, es ist müssig, darüber zu diskutieren, ob sinnvoll, logisch, oder wie auch immer. Es ist halt wie es ist ;-)


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

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