Hi,
also nochmal: Ich verwende seit Jahren nur noch Currency. Die 4 Nachkommastellen reichen mir aus und ich habe es bei Vergleichen wesentlich einfacher.
@alzaimar: und genau aus dem Grund stelle ich die Frage! Bei mir funktioniert der Code (und auch der Vergleich), bei meinem Kollegen nicht!
Und nun zu dem Mischen von Floats und Currency: Currency wird als Typ für die Felder von Klassen verwendet. Bei einer größeren Berechnung (die aber nichts mit dem Vergleich hier zu tun hat) verwende ich für das Zwischenergebnis einen Double. Das Zwischenergebnis wird aber nie nach draussen gegeben. Wenn die Berechnung fertig ist, wird der Double in einen Currency gewandelt.
Zu den Double-Vergleichen: Ich kenne die Funktionen zum Vergleich von Floats - nur hier habe ich einen Currency und ich verstehe nicht warum auf einmal (und zudem nicht immer) ein Float daraus wird.
Zitat:
Edit: Delphi konvertiert bei Vergleichen übrigens immer in den größeren der beiden verglichenen Typen, so dass hier zwei Floats, und keine zwei Currencies verglichen werden. Suche in der Delphi-PRAXiSVergleich Double ist z.B. prima zum suchen.
Das höre ich jetzt zum ersten mal! Warum sollte Delphi bei einem Integervergleich aus den Integern irgend welche Floats machen????
Grüße
Lemmy