关于 异常处理
书本介绍TRY时,没有什么例题参考。看得不是很明白,哪位懂的请发几个例子给我。。要简单些的
try里面的是一个程序块,你把可能发生异常的程序块放到try中执行,
如果真发生异常的话,try就把这个异常抛出,
这个抛出过程由throw进行,抛出异常后,
由紧跟在try块后的 catch 接收并解决这个异常
下面是一个解二次方程的例子:
#include<iostream>
#include<math.h>
using namespace std;
double Quadratic(double A,double B,double C,bool choose)
{
if(A)
{
if((B*B-4*A*C)<0)
throw "Error";
else
if(choose)
return ((-1)*B+sqrt(B*B-4*A*C))/(2*A);
else
return ((-1)*B-sqrt(B*B-4*A*C))/(2*A);
}
else
throw C/((-1)*B);
}
int main()
{
try
{
double A,B,C;
cout<<"Enter three number:";
cin>>A>>B>>C;
cout<<"The answer is:"<<Quadratic(A,B,C,1)<<"And"<<Quadratic(A,B,C,0)<<'\n';
}
catch(char *ptr)
{
cout<<ptr<<'\n';
}
catch(double answer)
{
cout<<"The answer is:"<<answer<<'\n';
}
return 0;
}