Hallo,
ich habe mich schon öfters gefragt, warum bei Delphi Bedingungen/Condition's und Vergleichen der rechte Wert mit einen Assign-Zeichen (also dem ist-gleich = Zeichen) eingeleitet wird.
Für mich macht es mehr Sinn:
if foo == 42 then...
zu schreiben als:
if foo = 42 then ...
weil das if foo = 42 doch sehr nach Zuweisung und nicht gerade nach Vergleich anmutet.
Sind da Pläne bekannt, das zu ändern - oder ist das Historisch bedingt ?
ich mein... Alles Neu macht der Mai ...
":=" ist in der Mathematik als Definitions zeichen gebräuchlich.
Da Pascal(aka Procedural Delphi) aus dem Universitäts- und Lehrumfeld kommt , benutzt es mathematische Symbole soweit das geht.
"=" wird zum vergleichen benutzt.
":=" das Definitionszeichen wird zum Zuweisen genutzt....das Zuweisungszeichen wäre iegentlich ein links pfeil...aber sowas wie "<-" führt zu Verwirrungen bei negativen zahlen
"a<-7" könnte ja a kleiner -7 heißen oder +7 der variable a zuweisen.
Wenn man Mathe-Formel-Editoren hatte benutzte man früher auch oft das Indentiätszeichen "≡" für zuweisungen aber das ist eben nach ISO 31-11
https://de.wikipedia.org/wiki/Liste_...nitionszeichen
nicht mehr en vogue und "≡" sollte jetzt nur noch für Identität/Kongruenz genutzt werden.
Delphi benutzt ":=" weil es damals noch keine coolen
unicode zeichen gab wie Definition linksseitig "≔" oder eben "≝" (das ist ein = mit dem Wort DEF oben drüber).
Es gibt übrigens noch eine ganze Reihe anderer operatoren die wir in Delphi nicht haben ...zum Glück...
z.b. "test auf unifizierbarkeit" wie in Prolog....