Зачем использовать обработку исключений в явно «безопасном» коде?

Пожалуйста, может кто-нибудь объяснить мне, что может вызвать исключение в этом коде?

function CreateBibleNames: TStrings;
begin
  Result := TStringList.Create;
  try
    Result.Add('Adam');
    Result.Add('Eva');
    Result.Add('Kain');
    Result.Add('Abel');
  except
    Result.Free;
    raise;
  end;      
end;

Так как я использую Delphi, я использовал обработку исключений, возможно, один раз. Я считаю, что приведенный выше код написан опытным программистом, и я не думаю, что исключения являются избыточными. Но все же использование обработки исключений в этой концепции остается для меня загадкой. Кажется, это безопасный код (без попытки, кроме конца). Я много раз видел подобные фрагменты кода, такие какПоэтому, возможно, есть веская причина написать это так, несмотря на мой опыт, который не доказал это »с необходимостью.

Более того, когда что-то не получается, я получаю описание исключения ....

Thanx

Ответы на вопрос(8)

Ваш ответ на вопрос