|
书上说catch可以处理各种异常,功能强大。
int a;
try
{
a=StrToInt("12s");
}
catch(...)
{
a=0;
}
超级简单得例子
=============
int aa,bb,xx;
bb=0;
try
{
if(bb==0)
throw EDivByZero("bb不能为零!");
xx=aa/bb;
}
catch(EDivByZero &E)//VCL Exception类的子类
{
ShowMessage(E.Message);
}
catch(Exception &E) //所有VCL异常类的基类
{
ShowMessage(E.Message);
}
catch(...) //捕获所有异常
{
}
================
我一般是这样做的:
try
{
让计算机做你想做的事情.
}
catch(...)
{
告诉计算机,你想做的事没做成该怎么办.
}
==== 经典 =============
经典:
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
|
|