Besser...
Delphi-Quellcode:
procedure TfMain.Button1Click(Sender: TObject);
var
In_A: string;
slShow: TStringList;
begin
In_A := '';
slShow := TStringList.Create;
try
if In_A = '' then
exit;
finally
slShow.Free;
end;
end;
Danke! Da hast Du natürlich recht: So setze ich es jetzt auch in meinen echten Projekten um...
Naja, das ist zwar nicht falsch, erzeugt aber, wenn In_A = '', unnötigerweise die Stringlist, nur um sie dann sofort wieder freizugeben. Bei einer Stringlist ist das noch relativ egal, aber bei komplexeren Klassen kann der Constructor schonmal einiges an Ressource fressen, so dass man sie nur erzeugen sollte, wenn wirklich notwendig. Die Variante mit slShow := nil vor dem Try ist in dem Fall dann besser.