简单的尝试..最后的例子,以避免内存泄漏
如果在执行期间发生异常,请使用 try
-finally
以避免泄漏资源(例如内存)。
下面的过程将字符串保存在文件中,并防止 TStringList
泄漏。
procedure SaveStringToFile(const aFilename: TFilename; const aString: string);
var
SL: TStringList;
begin
SL := TStringList.Create; // call outside the try
try
SL.Text := aString;
SL.SaveToFile(aFilename);
finally
SL.Free // will be called no matter what happens above
end;
end;
无论保存文件时是否发生异常,SL
都将被释放。任何异常都将发送给调用者。