Delphi-PRAXiS
Seite 1 von 5  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Delphi-Language erweitern !? (https://www.delphipraxis.net/51885-delphi-language-erweitern.html)

PierreB 21. Aug 2005 13:04


Delphi-Language erweitern !?
 
Moin,

ich hab da mehr eine theoretische Frage (Ich frage nur aus Neugier ;) ):

Ist es möglich, den Sprachumfang von Delphi zu erweitern, also zum Beispiel neue Operatoren hinzuzufügen?
Unter C++ gibt es ja den sogenannten Inkrementationsoperator, der so aussieht
Code:
i++;
und im Grunde ja nichts macht außer
Delphi-Quellcode:
i := i + 1;
. Könnte man diesen Operator auch in Delphi einbauen ?

Mir ist klar, dass man auch einfach ne Funktion schreiben könnte, die eine Variable um 1 erhöht, aber diese würde dann ja anders aufgerufen werden müssen.

Ich weiß nicht ob jemand versteht was ich meine, aber ist sowas theoretisch möglich ? ;)

Thx

ichbins 21. Aug 2005 13:10

Re: Delphi-Language erweitern !?
 
Ich denke nicht, das das geht, denn die Operatoren sind wahrscheinlich in irgendwelchen binären Dateien wie Delphi-Dlls oder der Delphi32.exe selbst gespeichert. Mit einem guten Hex-Editor hättest du vielleicht Chancen...

inc(i) braucht auch nicht viel mehr Zeichen (i++ 3 inc(i) 6)

PierreB 21. Aug 2005 13:14

Re: Delphi-Language erweitern !?
 
Zitat:

Zitat von ichbins
Ich denke nicht, das das geht, denn die Operatoren sind wahrscheinlich in irgendwelchen binären Dateien wie Delphi-Dlls oder der Delphi32.exe selbst gespeichert. Mit einem guten Hex-Editor hättest du vielleicht Chancen...

Ja, hab mir auch schon sowas in der Art gedacht, aber kann man dem Compiler nicht neue Befehle/Funktionen hinzufügen ?
Zitat:

inc(i) braucht auch nicht viel mehr Zeichen (i++ 3 inc(i) 6)
Ja ich weiß, es ging mir auch eigentlich nur um die Theorie, der Inkrementationsoperator sollte nur als Beispiel dienen. ;)

ichbins 21. Aug 2005 13:24

Re: Delphi-Language erweitern !?
 
Das einzige, was mir jetzt einfällt, ist, bei Borland direkt anzufragen... :(

PierreB 21. Aug 2005 13:27

Re: Delphi-Language erweitern !?
 
Zitat:

Zitat von ichbins
Das einzige, was mir jetzt einfällt, ist, bei Borland direkt anzufragen... :(

Ich wollte eigentlich erstmal die Meinung der Profis aus der DP hören. ;) Trotzdem danke.

r2c2 21. Aug 2005 13:37

Re: Delphi-Language erweitern !?
 
Zitat:

Zitat von PierreB
Zitat:

Zitat von ichbins
Das einzige, was mir jetzt einfällt, ist, bei Borland direkt anzufragen... :(

Ich wollte eigentlich erstmal die Meinung der Profis aus der DP hören. ;) Trotzdem danke.

Ich bin zwar kein Profi, aber: In C++ gibt es z.B. die Möglichkeit Operatoren zu überladen. Also genau das, was du machen willst. In Delphi ist das so nicht möglich. Auch, schätze ich, dass du da mit nem Hex-Editor wenig Chancen hast. Obs bei Delphi.NET überladene Operatoren gibt, weiß ich aber nicht...

mfg

Christian

PierreB 21. Aug 2005 13:52

Re: Delphi-Language erweitern !?
 
Zitat:

In C++ gibt es z.B. die Möglichkeit Operatoren zu überladen. Also genau das, was du machen willst. In Delphi ist das so nicht möglich.
Hm, warum nicht ? :gruebel: Gibt es denn gar keine Möglichkeit ? :(

r2c2 21. Aug 2005 13:55

Re: Delphi-Language erweitern !?
 
Zitat:

Zitat von PierreB
Zitat:

In C++ gibt es z.B. die Möglichkeit Operatoren zu überladen. Also genau das, was du machen willst. In Delphi ist das so nicht möglich.
Hm, warum nicht ? :gruebel: Gibt es denn gar keine Möglichkeit ? :(

In Delphi geht das nicht. Manche Dinge gibts einfach so nicht. Mehrfachvererbung, explizite Unterstüzung von Singletons, Objekte aufm Stack...
Manches lässt sich über Trick18 noch irgendwie hinbiegen. Ob das aber auch bei Operatorenüberladung geht,...

mfg

Christian

Dax 21. Aug 2005 13:59

Re: Delphi-Language erweitern !?
 
Was du tun könntest, war dir ein Plugin auf OTA-Basis zu schreiben, das alle i++ in Inc(i) umwandelt. Natürlich musst du dann an der Syntax herumprüfen, weil es ja auch Formel wie a := b * (i++) geben kann.

PierreB 21. Aug 2005 14:04

Re: Delphi-Language erweitern !?
 
Zitat:

Zitat von Dax
Was du tun könntest, war dir ein Plugin auf OTA-Basis zu schreiben, das alle i++ in Inc(i) umwandelt. Natürlich musst du dann an der Syntax herumprüfen, weil es ja auch Formel wie a := b * (i++) geben kann.

:shock: Das ist mir dann wohl doch etwas zu aufwendig, ich hab ja nicht gewusst das Delphi so begrenzt ist....

Trotzdem danke für eure Antworten. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 Uhr.
Seite 1 von 5  1 23     Letzte »    

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