AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch XE8: Sinn von FixedInt, FixedUint, System.Hash
Thema durchsuchen
Ansicht
Themen-Optionen

XE8: Sinn von FixedInt, FixedUint, System.Hash

Ein Thema von gammatester · begonnen am 23. Apr 2015 · letzter Beitrag vom 23. Apr 2015
Antwort Antwort
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#1

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 09:07
In diesem XE7-Beitrag werden sie noch als plattform-unabhängig bezeichnet: http://docwiki.embarcadero.com/RADSt...#Integer_Types
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 09:09
Also System.Hash ist auf jeden Fall erst seit XE8 dabei.
Finds nicht so tragisch dass nur die 3 Funktionen enthalten sind. MD5 und SHA1 sind wahrscheinlich mit Abstand die am häufigsten verwendeten Hash-Algorithmen.
Damit hat Embarcadero wahrscheinlich 80% der Fälle abgedeckt. Ein paar mehr wären natürlich nett, aber notfalls benutzt man halt weiterhin die 3rd-Party Units falls SHA1/MD5 nicht reichen.
Vielleicht kommt ja mit den nächsten Versionen noch der ein oder andere Algorithmus nach.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."

Geändert von Neutral General (23. Apr 2015 um 09:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 10:30
In diesem XE7-Beitrag werden sie noch als plattform-unabhängig bezeichnet: http://docwiki.embarcadero.com/RADSt...#Integer_Types
Auch in XE8, aber wie gut die Hilfe manchmal ist, braucht man wohl nicht erwähnen.

http://docwiki.embarcadero.com/RADSt...#Integer_Types


Ich hab mich jetzt drauf eingestellt, daß Integer nicht wächst und in anderen Programmiersprachen tut der das auch nicht, wenn er das in Delphi nun doch tun sollte, dann gibt's Haue.





Ist ja schon schlimm genug, daß sLineBreak je nach Zielplattform mal String und da plötzlich Char ist,
aber dem nicht genug, das ist genau genommen sogar AnsiString und AnsiChar, obwohl man sich im NextGen viel mühe gegeben hat das ANSI rauszuwerfen.
Vesucht mal diesen Dreck plattformunabhängig ohne IFDEFs als PChar zu verwenden, oder an ein Char (natürlich nur, wenn Length=1) zuzuweisen.

[add]
LongInt = 64 Bit?

LONG = 32 Bit
LONG LONG = 64 Bit

Ich hoffe mal LongInt ist und bleibt 32 Bit
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (23. Apr 2015 um 10:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#4

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 10:53
http://docwiki.embarcadero.com/RADSt...#Integer_Types

...

Ich hoffe mal LongInt ist und bleibt 32 Bit
Wie aus deinem Link unschwer zu erkennen ist, trifft das für iOS-64 ja bereits nicht mehr zu.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 11:10
http://docwiki.embarcadero.com/RADSt...#Integer_Types

...

Ich hoffe mal LongInt ist und bleibt 32 Bit
Wie aus deinem Link unschwer zu erkennen ist, trifft das für iOS-64 ja bereits nicht mehr zu.
Letztenlich muss sich Emba mehr oder minder daran halten was der OS-Hersteller vorgiebt damit die API-Header möglichst 1:1 übernommen werden können.
Und Apple/MS definieren hier auf OS-Seite jeweils eigene Regeln: http://en.wikipedia.org/wiki/Integer...ter_science%29
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 11:17
Man sollte den Apfel mal verklagen.


Naja, das wars dan mit der vielversprochenden Abwärtskompatibilität von Delphi,
oder kann man FixedInt auch in älteren Delphis nutzen, ohne daß man wirklich jeden Scheiß immer erstmal selber definieren/ableiten muß?
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#7

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 11:52
oder kann man FixedInt auch in älteren Delphis nutzen, ohne daß man wirklich jeden Scheiß immer erstmal selber definieren/ableiten muß?
Da die Zeitmaschine gerade kaputt ist, wirst du um eine Deklaration á la FixedInt = LongInt mit dem passendem IFDEF wohl nicht herumkommen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 12:27
Naja, das wars dan mit der vielversprochenden Abwärtskompatibilität von Delphi,
Ist es doch. Unter 32-Bit ändert sich nix.

Liegt halt an deinen Quellcode der nicht Aufwärtskompatible ist


oder kann man FixedInt auch in älteren Delphis nutzen, ohne daß man wirklich jeden Scheiß immer erstmal selber definieren/ableiten muß?
Mit Ifdef in eigene Basisunit und schon sollte es gehen. Mach ich z.B. mit Funktionen wie CharInSet.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: XE8: Sinn von FixedInt, FixedUint, System.Hash

  Alt 23. Apr 2015, 13:32
Zusammengefasst also wie Folgt?


Wenn man einen Integer will, der 32 Bit ist, dann wird das schwerer, ohne sich den selber zu implementieren.

Vor 64-Bit-CPUs war Integer mal dynamisch und wurde danach statisch/eingefroren. Aber LongInt war wenigstens immer 32. NativeInt wurde als Ausgleich erfunden, den man davor aber nicht nutzen kann, weil ihn noch Keiner kennt und Emba keine Updates für ältere Delphi anbietet.

Seit Apfel64 ist LongInt, der eigentlich statisch ist, plötzlich dynamisch. Dafür gibt es nun FixedInt, den man davor natürlich nicht nutzen kann.



Auch Int32 gibt es noch nicht so lange, oder?
Und da Int32 doch per Definition ein LongInt ist, oder andersrum, müsste der Apfel den doch auch wachsen lassen?


Und FixedInt als Name ist auch nicht viel besser, denn auf was ist der denn aktuell fix? (jetzt noch 32 Bit)

Beim Integer hatten sich ja fast alle so "geeinigt", auch wenn ich es immernoch für einen Fehler halte. (aber annähernd nichtmal so schlimm wie LongInt)



Multiplattform und mehrere OS-Versionen kann man so "grundsätzlich" vergessen unterstützen zu wollen und muß für jede Plattform fast schon einen eigenen Code schreiben.
Oder alles selber machen und das ständig anpassen.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (23. Apr 2015 um 13:38 Uhr)
  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 10:47 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