Thema: Delphi Wer macht den Free?

Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Wer macht den Free?

  Alt 12. Feb 2017, 18:11
Wegen genau dieser Problematik meide ich Funktionen, die Klasseninstanzen zurückgeben, welche erst innerhalb der Funktion erzeugt werden, wie der Teufel das Weihwasser. Etwas anders ist es bei Interfaces, da ist es dann eben ein TInterfacedObject, aber das muss den Aufrufer ja nicht interessieren. Außerdem schließt man somit die unnötige Verschwendung von Bits und Bytes () wie hier aus:
Delphi-Quellcode:
function TMyClass.GetNames: TStrings;
var
  List: TStringlist;
begin
  List := TStringlist.Create;
  //Liste beispielhaft befüllen
  List.Add('Heinz');
  List.Add('Hans');
  List.Add('August');
  Result := List;
end;

procedure TMyClass.VerarbeiteNames;
var
  i: integer;
begin
  for i := 0 to GetNames.Count - 1 do
    Stringverarbeitung(GetNames[i]);
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat