Einzelnen Beitrag anzeigen

Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.743 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#21

AW: Delphi 13 - Ternary Operator

  Alt 28. Aug 2025, 14:57
Ich hätte da wohl eher die ifthen()-Funktionen per Compilerschalter zum Ternary-Operator gemacht. Oder vielleicht stattdessen eine iif()-Funktion eingeführt. Aber das hätte natürlich zu Inkompatibilitäten für existierenden Code führem können.
Funktionen lösen das Problem nicht und eine unsichtbare Compiler-Magic ist auch nicht wirklich intuitiv. Es ist ja schon nicht mal sicher dass inline immer das macht was man erwartet.
Eine neue Funktion iif(<condition>, <truevalue>, <falsevalue>), die per Compiler Magic als Ternary Operator fungiert, also anhand der <condition> nur <truevalue> oder <falsevalue> auswertet, wäre sehr wohl möglich gewesen. Dass sie immer als solche funktioniert hätte man genauso erzwingen könnnen wie für die (if <condition> then <truevalue> else <falsevalue>) Syntax. Damit hätte sich die Frage nach der Operator-Priorität auch erledigt gehabt. Wollte man aber nicht.

Gab es den Ternary Operator nicht schon in Free Pascal? Hm, nee, anscheinend nicht, zumindest findet Ecosia nichts.
Thomas Mueller
  Mit Zitat antworten Zitat