Zitat von
himitsu:
Also mir ist/war so, als wäre das genau andersrum, TStringItem baut doch auf TStrings/TStringList auf?
Dann schau mal in den Quellcode von Classes.pas. TStringItem baut überhaupt nicht auf TStrings/TStringList auf. Das ist andersherum:
Code:
PStringItem = ^TStringItem;
TStringItem = record
FString: string;
FObject: TObject;
end;
Zitat:
Und dort stehen die Strings alle in einer Reihe, da ist dann kein Platz merh, für die Refferenzzähler, Längenangaben und was sonst noch in so'nem LongString enthalten ist (neben dem reinem Text).
Und was ist dann das:
Code:
PStringItemList = ^TStringItemList;
TStringItemList = array[0..MaxListSize] of TStringItem;
TStringList = class(TStrings)
private
FList: PStringItemList;
Einer von uns versteht das Konstrukt Array wohl im Moment nicht mehr.