問題是:在引發異常後,我可以阻止它從它自己的構造函數傳播?考慮代碼波紋管:加薪被稱爲德爾福 - 異常處理它自己的構造函數後,它被提出
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TMyErrorClass = class(Exception)
constructor Create(aMsg:String);
end;
TForm2 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);
begin
//
raise TMyErrorClass.Create('test');
end;
{ TMyErrorClass}
constructor TMyErrorClass.Create(aMsg: String);
begin
{$IFDEF DEBUG}
Showmessage(aMsg);
{$ELSE}
//here I want to 'kill' the exception
{$ENDIF}
end;
end.
後,我怎樣才能終止異常,無添加的try /除外終於在那裏我養的例外呢?
LE:我有幾乎2000升這樣的一個應用程序......我試圖找出一個替代解決方案編寫錯誤處理它....
如果你要在它被構建之前殺死它,爲什麼要在第一個地方舉起它?不要使用異常,只需顯示一個消息框。 – 2011-12-16 12:23:24