嘗試使用 2 個或更多物件

Object1 := nil;
Object2 := nil;
try
  Object1 := TMyObject.Create;
  Object2 := TMyObject.Create;
finally
  Object1.Free;
  Object2.Free;
end;

如果你沒有在 try-finally 塊之外用 nil 初始化物件,如果其中一個無法建立,則 finally 塊上將出現 AV,因為該物件不會為 nil(因為它沒有被初始化)並且會導致例外。

Free 方法檢查物件是否為 nil,因此使用 nil 初始化兩個物件可以避免在未建立時釋放它們時出錯。