![]() |
Re: Operatoren überschreiben
Das typische Einsatzgebiet dafür sind, soweit ich mich da erinnere, Smartpointer. In C++ können Objekte ja einfach auf dem Stack deklariert werden und werden somit automatisch zerstört, wenn sie den Gültigkeitsbereich verlassen. Das Verhalten nutzt man aus, um damit Smartpointer, also intelligente Zeiger, auf Objekte zu implementieren, beispielsweise COM-Objekte. Dabei werden die Operatoren -> und & überschrieben, damit sie die Adresse bzw. die Elemente des COM-Objekts und nicht die der Smartpointer-Klasse zurückgeben. Ich finde das ganze zwar etwas pervers, aber möglich ist es und wirklich dumm auch nicht, ob es in Delphi dafür eine Notwendigkeit gibt, ist eine ganz andere Geschichte :)
|
Re: Operatoren überschreiben
mal 'ne frage, wozu ist eigentlich der Positive Operator?
OK, bei Negative (-x) wird ja der Wert (Vorzeichen) geändert, aber bei Positive (+x) passiert doch nichts :gruebel: |
Re: Operatoren überschreiben
sagen wir mal so, die operatoren auf records kann man seit D2006 überschreiben, die auf objekte geht schon früher :-)
schöne grüsse GG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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