Danke,
aber schon das nächste was ich nicht verstehe. Es geht um Delphi 10.4
Delphi-Quellcode:
TValueData = record <--------------------------- steht in System.Rtti.pas bei Zeile 48
FTypeInfo: PTypeInfo;
// FValueData vs old FHeapData:
// FHeapData doubled as storage for interfaces. However, that was ambiguous
// in the case of nil interface values: FTypeInfo couldn't be trusted
// because it looked like the structure was uninitialized. Then, DataSize
// would be 0.
// FValueData is different: interfaces are always stored like strings etc.,
// as a reference stored in a blob on the heap.
FValueData: IValueData;
case Integer of
0: (FAsUByte: Byte);
1: (FAsUWord: Word);
2: (FAsULong: Cardinal);
3: (FAsObject: Pointer);
4: (FAsClass: TClass);
5: (FAsSByte: ShortInt);
6: (FAsSWord: SmallInt);
7: (FAsSLong: Integer);
8: (FAsSingle: Single);
9: (FAsDouble: Double);
10: (FAsExtended: Extended);
11: (FAsComp: Comp);
12: (FAsCurr: Currency);
13: (FAsUInt64: UInt64);
14: (FAsSInt64: Int64);
15: (FAsMethod: TMethod);
16: (FAsPointer: Pointer);
end;
[HPPGEN(HPPGenAttribute.mkNonPackage)]
TValue = record
Wo ist das "end;" zu "TValueData = record" ?
Charly