1. 异常
异常:发生错误
C++是一种容错机制,允许主动发生错误、主动捕获错误、主动去处理错误。
1.1 处理流程:
(1)主动产生异常,抛出异常
(2)检测是否产生了异常
(3)捕获异常并对该异常进行处理
1.1.1 throw关键字
用于抛出异常,即主动产生异常
使用格式:
throw 异常的类型 ; //抛出该种类型的异常
1.1.2 try代码块
用于检测是否产生异常
使用格式:
try
{
//待检测的代码
}
1.1.3 catch代码块
用于捕获异常并处理异常
使用格式:
catch(捕获的异常类型) //直接放置类型
{
//对异常进行处理
}
1.2 举例
except.cpp
#include "iostream"
using namespace std;
//模拟捕获处理异常
int get_Value(int a, int b)//获取a/b的值,会出现b等于0的情况
{
if (b == 0)//分母不能为零,为零则抛出异常
{
throw 1; //throw后面写具体的数据
}
return a / b;
}
int main()
{
try//用于检测是否产生异常
{
get_Value(10, 0);
}
catch (int)//捕获并处理异常
{
//处理该异常
cout << "产生的异常:分母为0" << endl;
}
catch (char)//因为我们抛出的使整型异常,这个是捕获字符异常,所以捕获不到
{
}
cout << "检测完成" << endl;
return 0;
}