Code: Alles auswählen
// vaString ist ein Teil von TValueType aus Classes
type
TValueType = (vaNull, vaList, vaInt8, vaInt16, vaInt32, vaExtended,
vaString, vaIdent, vaFalse, vaTrue, vaBinary, vaSet, vaLString,
vaNil, vaCollection, vaSingle, vaCurrency, vaDate, vaWString, vaInt64,
vaUTF8String, vaUString, vaQWord);
Folges passiert mit FPC:
IntToStr(SizeOf(vaString)) liefert 4
IntToStr(Integer(SizeOf(vaString))) liefert auch 4
IntToStr(Byte(SizeOf(vaString))) liefert auch 4
Turbo Delphi macht daraus 1 und das ist logisch weil TValueType nicht so groß ist 1 byte müßte reichen.