AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 13 - Ternary Operator

Ein Thema von bernau · begonnen am 27. Aug 2025 · letzter Beitrag vom 5. Sep 2025
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.713 Beiträge
 
Delphi 12 Athens
 
#1

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 01:20
Auch das hilft nicht.
Jupp, auch ich hatte schon tagelang gesucht und ein Demoprojekt erstellt.
Am Ende sogar die Lösung geliefert, welches sie in nichtmal 2 Minuten hätten beheben können. (es müssen nur zwei Variablen auf 0 gesetzt werden, bei Zuweisung eines anderen Property)

Emba hat sich geweigert und am Ende haben bei uns 4 Mitarbeiter über eine Woche verschwendet, um einen Bugfix zu bauen. (weil der Fix nicht nur im Kompilat, sondern auch im FormDesigner rein mußte)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.917 Beiträge
 
Delphi 12 Athens
 
#2

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 12:28
Hmmm … und was hat das nun mit dem Ternären Operator zu tun?

Back to topic, bitte
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.713 Beiträge
 
Delphi 12 Athens
 
#3

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 13:23
Ob es verschwendete Lebenszeit ist, mal nach += , -= , *= und /= zu fragen? (auf für Enums, Strings und Arrays)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.110 Beiträge
 
Delphi 12 Athens
 
#4

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 13:27
Ob es verschwendete Lebenszeit ist, mal nach += , -= , *= und /= zu fragen? (auf für Enums, Strings und Arrays)
Wenn das dann syntaktisch ähnlich dem ternären Operator umgesetzt würde, würde es nichts bringen.
Sebastian Jänicke
AppCentral

Geändert von jaenicke (31. Aug 2025 um 13:29 Uhr)
  Mit Zitat antworten Zitat
skybibo

Registriert seit: 23. Jun 2008
Ort: NRW
33 Beiträge
 
Delphi 12 Athens
 
#5

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 13:38
Ob es verschwendete Lebenszeit ist, mal nach += , -= , *= und /= zu fragen? (auf für Enums, Strings und Arrays)
müsste += dann nicht eventuell +:= sein?

Aber mal ehrlich muss Delphi die Syntax von anderen Sprachen übernehmen? Wie lange ist Delphi dann noch Pascal?
Bernd
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.713 Beiträge
 
Delphi 12 Athens
 
#6

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 14:10
Wäre das nicht zuviel des Guten.

Auch so wäre es bereits mit der PascalSyntax kompatibel.

Und warum nicht?


Andere haben bei Delphi Pascal abgeguckt und Pascal hat auch schon viel abgeguckt.

Wenn ich nur an den Mist mit TMonitor denke, oder an TPath ... Umbenannen dürfte man gern mal, bevor es eingebaut wird, wenn es Konflikte geben wird.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (31. Aug 2025 um 14:12 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.110 Beiträge
 
Delphi 12 Athens
 
#7

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 14:13
Aber mal ehrlich muss Delphi die Syntax von anderen Sprachen übernehmen? Wie lange ist Delphi dann noch Pascal?
Ich finde es schon gut, wenn sich eine Sprache weiterentwickelt. Und mit dem Argument hätte man damals auch Generics ablehnen können, deren Syntax und Funktionalität ja auch übernommen wurde.

Wie schon geschrieben gefällt mir die aufgeblähte Pascalsyntax des ternären Operators nicht. Das heißt nicht, dass ich ihn nicht verwenden werde. Aber ich finde die Umsetzung in der Mehrheit der Sprachen besser.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.713 Beiträge
 
Delphi 12 Athens
 
#8

AW: Delphi 13 - Ternary Operator

  Alt 31. Aug 2025, 15:05
Nja, im Prinzip nutzt es ja nur die bekannte Syntax, womit es somit überall gleich bleibt, egal ob einzeln oder mitten in einer Berechnung.

Ähnlich sieht es z.B. mit dem CASE in Postgres aus, was ja auch einzeln oder mittendrin genutzt werden kann.




Und das Andere, bei i += 1; gegenüber i := i + 1 fällt es nicht auf,
aber s := s + ' '; oder s += ' '; (wobei ich hoffe die Codoptimierung macht aus Ersten sowieso bereits Letzteres),
also zwei Strings verknüfen und einer Variable zuweisen und dann den alten String wegwerfen, oder den neuen string möglichst inplace an den bestehenden anhängen,
aber besonders bei Längerem hätte es Vorteile:
Delphi-Quellcode:
meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas := meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas + 'alleluja';
meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas += 'alleluja';
Letztes ist nicht nur kürzer ... es fällt auch sofort auf, dass hier Quelle und Ziel identisch sind.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
652 Beiträge
 
Delphi XE6 Enterprise
 
#9

AW: Delphi 13 - Ternary Operator

  Alt 1. Sep 2025, 10:44
Delphi-Quellcode:
meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas := meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas + 'alleluja';
meinelistenvariable.sonstwo[abcdefghijklmnopq].nochwas += 'alleluja';
Letztes ist nicht nur kürzer ... es fällt auch sofort auf, dass hier Quelle und Ziel identisch sind.
Pascal böte ja eine Lösung des Problems. Einfach und übersichtlich. Blöd nur, dass man sie nicht verwenden soll:
with meinelistenvariable.sonstwo[abcdefghijklmnopq] do nochwas := nochwas + 'alleluja'; .

Delphi-Quellcode:
Tsonstwo ist eine Klasse:
var x := meinelistenvariable.sonstwo[abcdefghijklmnopq]; x.nochwas := x.nochwas + 'alleluja';
Tsonstwo ist ein Record:
var x := @meinelistenvariable.sonstwo[abcdefghijklmnopq]; x^.nochwas := x^.nochwas + 'alleluja';
(dieser "richtige Weg" ist mir bekannt)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 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