ShortString bzw. String[LEN] .... der alte/erste "String" als Record
LongString > AnsiString, RawByteString, UTF8String, UnicodeString und alle anderen Ableitungen von AnsiString
AnsiString und AnsiString(CP) ... ein aufgemotztes dynamisches Array mit Referenzzählung und
ANSI-Codepage
UnicodeString ... ein aufgemotztes dynamisches Array mit Referenzzählung und WideChar
UCS4String ... ein echt schrottiges "array of UCS4Char"
WideString ... eine Kapselung des BSTR der OleAuth32.dll, um die APIs ala
SysAllocString
Ahh... ja, es schimmert mir allmählich... da war was. Stimmt, danke. Genau das war der unterschied zwischen WideString und UnicodeString.
Klar, dass es bei Strings einen Unterschied macht sagte ich ja bereits. Das geht ja auch (als einzig brauchbare Erklärung) aus dem DocWiki-Eintrag hervor: "
Using const allows the compiler to optimize code for structured - and string-type parameters."
Nur wüsste ich halt gern, was bei anderen Typen passiert. Wann bzw. ob diese referenziert werden. Und das steht nirgendwo vernünftig erklärt. Danke zumindest an dieser Stelle für die Records. Ich gehe mal davon aus, dass es bei Integern und arrays entsprechen ähnlich zu statten geht.