![]() |
class operator
Ich habe seit kurzem Delphi Turbo, und eigentlich ist es ja BDS 2006.
Jetzt wollte ich wissen, wie ich "class operator"s schreiben kann? Ich habe sowas, aber er meint, er erkennt nur var, prozedure oder function.
Delphi-Quellcode:
type
TForm1 = class(TForm) private [...] public class operator equal(a: TPoint; b : TPoint) : Boolean; end; |
Re: class operator
solche operatoren funktionieren soweit ich weiß nur bei Recordtypen. Was genau hast du denn vor? Willst du einen Klassenfunktion schreiben? Denn nach den Parametern zu Urteilen willst du nicht wirklich einen ClassOperator für eine Klasse schreiben.
|
Re: class operator
Uner Win32 werden Class Operators nur bei Record unterstützt.
|
Re: class operator
@ mkinzler:
Okay... Schade ;) Werde wohl einen eigenen TPoint erstellen. @ Thornberry: Ich habe vor, dass ich zwei TPoints einfach über "=" vergleichen kann (und da bietet sich ja es gerade zu an c.o. zu nehmen) |
Re: class operator
die Frage ist ob er wirklich DEN ClassOperator verwenden will. Denn bei seinem equal sind beide Parameter nicht vom Typ seiner Klasse was darauf hindeutet das es gar nicht als Klassoperator ausgelegt werden soll.
Wenn ich nicht ganz falsch liege sollte doch mindestens einer der Parameter vom Typ des Records sein damit eben dieser Record verglichen werden kann. Anders würde es doch keinen Sinn machen oder doch? Wenn du zwei TPoint vergleichen willst wäre es doch sinnvoller TPoint neu zu declarieren und dort den Class-Operator hinzuzufügen. |
Re: class operator
Zitat:
Hatte heute das gleiche Problem. Ich hatte die Delphi-Hilfe zu Rate gezogen. Leider ist die etwas verwirrend, da sie .NET-Beispiele enthält, was man auch ersteinmal herausfinden muss. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:37 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 by Thomas Breitkreuz