Ist es in Delphi eigentlich möglich, so ala C++ Operatoren zu überladen (z.Bsp. operator+) so das man halt (z.Bsp.) ganz einfach und auch wunderbar leserlich 2 eigene Klassen addieren kann {halt c:=a+b} oder geht das halt nur über funktionen {c:=plus(a,b)}
Genauso wüsste ich gerne ob man Sorten einführen kann, sprich zur Entwicklungszeit der Klasse steht der Dateityp noch nicht konkret fest, wenn ich aber eine Klasse einbinde muss ich dann den konkreten Typ angeben. Wollte dies für eine Listenklasse verwenden, die ich dann nicht unbedingt für jeden Objekttyp neu verändern wollte.
Hab dazu absolut nichts gefunden (oder vielleicht an der falschen Stelle gesucht ^^) Bin mir auch nicht so wirklich sicher, ob das unter Delphi7 überhaupt möglich ist ... aber vielleicht hat jmd ne kreative Idee )))
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Hab da auch noch was.
Die Operatren in C++ sind im übertragenen Sinne auch nur Methoden.
Zu dem Anderen. Wenn du so etwas wie C++ Templates im Hinterkopf hast, dann kannst du so etwas NICHT mit Delphi machen. Weil dephi eine recht strenge Sprache ist.
Was du aber auf jeden Fall machen kannst ist eine Basislisten Klasse. (Die TList gibts ja schon) In der kannst du Pointer speichern. Klassenvariablen sind ja auch nur Pointer. Und diese kannst du mittels "as" oder hartem Casting (TIrgendwas(Pointer)) auf den entstrechenden Typ umwandeln. Wenn du Lust und Laune hast kannst du auch eine kleine Wrapperklasse für die TList schreiben, die dir dann genau den Typ zurückliefert den du haben willst.
Naja, wollte mir den Aufwand für die Wrapper Klassen gekonnt sparen, indem ich halt nur eine schreibe und dann den jeweiligen Datentyp angebe. Na gut, wenns nich anders geht *snief*
Den Array Operator [] kann man in jeder Klasse überladen, indem man eine Eigenschaft mit Index als default deklariert. Ein Beispiel ist dafür in TStringList:
Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.