Jo, deine Aussage war richtig. Es ist wirklich ungewöhnlich und sinnlos, solch ein
array zu deklarieren, wie ich in meinem Code bemerkt habe. Habe das jetzt korrigiert.
Zu Finalize(): Diese Prozedur wird also nur auf Variablen mit undefinierbarer Länge angewandt, wie z.B. auf long-strings, variants usw.? D.h. es gibt keinen Grund, diese Prozedur auf
array of Extended oder
array of String[200] bzw. Shortstring loszulassen, richtig?
Noch mal zu records:
Delphi-Quellcode:
type
PGroupData = ^TGroupData;
TGroupData = record
GroupID : Word;
ShouldExpand : Boolean;
S : String;
end;
var
TestArrayT : array of TGroupData; // wird eher selten benutzt, nicht wahr?
TestArrayP : array of PGroupData;
Da in diesem
record eine Variable mit undefinierter Länge (= String) enthalten ist, müsste ich diesen doch beim Freigeben des arrays mit Finalize() leeren, oder? Und wenn ja, wie genau?
Wenn ich jetzt falsch liege, erklärt mir bitte das Gegenteil mithilfe der Beipiele. Das hilft mir ungemein.