Hi,
unter Turbo Pascal war in [0] die Länge von Strings gespeichert.
Ein String war damals noch in etwa ein
array[Byte] of Char
Beim Typ "ShortString" von Delphi dürfte das immernoch so sein.
Der neue HugeString ("String") hat seine Länge in 4 Bytes gespeichert, an die Du, genauso wie an den Referenzzähler, nicht ohne Umwege rankommst. Da musst Du immer Length() verwenden.
Nur noch zur Info
:
In "String[-8]" steckt der Referenzzähler und in "String[-4]" steckt der Längenzähler.
Ich habe das mal in Anführungszeichen gesetzt, weil Du ja nicht so darauf zugreifen kannst
mfG
mirage228