在Delphi中,可以使用try…except塊來處理異常和錯誤。下面是一個簡單的示例:
try
// 可能會引發異常的代碼
// 比如除以零
//raise Exception.Create('This is an exception');
except
on E: Exception do
begin
ShowMessage('An exception occurred: ' + E.Message);
end;
end;
在try塊中編寫可能會拋出異常的代碼,如果異常被拋出,程序會跳轉到except塊中進行處理。在except塊中,可以使用on關鍵字來指定要捕獲的異常類型,并使用E變量來訪問異常對象的信息。在這里,可以編寫處理異常的代碼,比如顯示錯誤消息或執行其他操作。
另外,Delphi還提供了全局異常處理程序,可以在應用程序的主代碼塊中設置,以捕獲未處理的異常。示例代碼如下:
procedure GlobalExceptionHandler(Sender: TObject; E: Exception);
begin
ShowMessage('An unhandled exception occurred: ' + E.Message);
end;
begin
Application.OnException := GlobalExceptionHandler;
Application.Initialize;
Application.Run;
end.
在全局異常處理程序中,可以對未處理的異常進行統一的處理,比如記錄日志或顯示錯誤消息。設置Application.OnException屬性即可將全局異常處理程序綁定到應用程序中。