Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: System.Length: Warum Integer und nicht Cardinal ?

  Alt 26. Mai 2021, 14:55
Arrays (Strings sind auch Arrays) können eh maximal 2 GB-1 groß werden, auch in 64 Bit-Compilern,
somit ist es vollkommen egal ob Integer oder Cardinal.

Integer ist es, weil es schon immer so war.
Und ja, bei High ist das Integer sogar notwendig, für Arrays die bei 0 beginnen, es -1 sein kann. (gut, man könnte die -1 auch nach Cardinal casten, wie z.B. beim INVALID_HANDLE_VALUE)
Bis vor Kurzem hatten in iOS und Android sogar die Strings mit 0 begonnen. (mitten in 10.4 wurde dieses Verhalten endlich für alle Platformen gleichgezogen, aber die Methoden des StringHelper sind immernoch 0)
$2B or not $2B

Geändert von himitsu (26. Mai 2021 um 15:02 Uhr)
  Mit Zitat antworten Zitat