C++中内置了异常处理的语法元素
try...catch...
--
try语句处理正常代码逻辑
--
catch语句处理异常情况
--
try语句中的异常由对应的
catch语句处理
try
{
double r = divide(1, 0);
}
catch(...)
{
cout << "Divide Exception..." << endl;
}
C++通过throw语句抛出异常,throw关键字后边跟的是一种"异常标志",可以是任何数据类型(包括自定义类)来代表异常。
【
编程实验】C++异常使用
double divide (double e, bouble b)
{
const double delta = 0.00000000000000000001;
double ret = 0;
if( !((-delta < b) && (b < delta)) )
{
ret = a / b;
}
else
{
throw 0;//除0异常
}
return ret;
}
C++异常处理分析
--
throw抛出的异常必须被
catch处理。
--当前函数能够处理,程序继续往下执行。