Hallo IngoD7,
ich habe mich in letzter Instanz entschieden, den Tip von Jelly angenommen. Daher habe ich jetzt keinen eigenen Destructor mehr, sondern den der Klasse TObjectlist. Den Test, nach dem du gefragt hast, habe ich vor diese letzten Änderung gemacht. Momentan sieht die Klasse so aus.
Delphi-Quellcode:
type TStreamlist= class (TObjectlist)
private
function GetStream(Index: Integer): TStringstream;
procedure PutStream(Index: Integer; const Value: TStringstream);
public
function add: integer;overload;
function Add(Item:TStringstream):integer;overload;
property items[Index: Integer]: TStringstream read GetStream write PutStream;
end;
implementation
function TStreamlist.add: integer;
var TagType: TStringstream;
begin
TagType:=TStringstream.Create('');
Result:= inherited add(TagType);
end;
function TStreamlist.Add(Item: TStringstream): Integer;
begin
Result:= inherited add(item);
end;
function TStreamlist.GetStream(Index: Integer):TStringstream;
begin;
result:= TStringstream(inherited Items[Index]);
end;
procedure TStreamlist.PutStream(Index: Integer; const Value: TStringstream);
begin
inherited items[Index]:=Value;
end;
end.