wo und wann soll ich den mit new reservierten Speicher für dne Zeiger wieder freigeben?
Danke und Gruss
Armin
procedure TTestClassA.getListe(var List: TList);
var
PTestRecord : ^TTestRecord;
begin
new(PTestRecord);
PTestRecord^.FeldA := 'Hallo';
PTestRecord^.FeldB := 'Test';
PTestRecord^.FeldC := 1;
List.Add(PTestRecord);
Result := List;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
List : TList;
TestClassA : TTestClassA;
PTestRecordKopie : ^TTestRecord;
begin
List := TList.Create;
TestClassA := TTestClassA.Create;
TestClassA.getListe(List);
PTestRecordKopie := List.Items[0];
Label1.Caption := PTestRecordKopie^.FeldA;
TestClassA.Free;
List.Free;
end;
Danke und Gruss
Armin
procedure TTestClassA.getListe(var List: TList);
var
PTestRecord : ^TTestRecord;
begin
new(PTestRecord);
PTestRecord^.FeldA := 'Hallo';
PTestRecord^.FeldB := 'Test';
PTestRecord^.FeldC := 1;
List.Add(PTestRecord);
Result := List;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
List : TList;
TestClassA : TTestClassA;
PTestRecordKopie : ^TTestRecord;
begin
List := TList.Create;
TestClassA := TTestClassA.Create;
TestClassA.getListe(List);
PTestRecordKopie := List.Items[0];
Label1.Caption := PTestRecordKopie^.FeldA;
TestClassA.Free;
List.Free;
end;
Comment