首页 > 代码库 > c++异常捕获
c++异常捕获
#include <iostream>
#include <string>
using namespace std;
int main()
{
try
{
int value1,value2; //定义两个整型变量
cout<<"Pleaseinput two value:"<<endl; //提示输入信息
cin>>value1>>value2; //从键盘输入两个整型数
cout<<"Maybeexception code:"<<endl; //提示可能出现异常的代码信息
if(value2== 0) //如果除数为0则抛出异常
{
throw 0;
}
else //否则直接计算相除操作
{
cout<<"value1/value2:"<<(value1/value2)<<endl;
}
}catch(int i) //捕捉参数为整型的异常
{
cout<<"divisoris 0!"<<endl; //异常处理代码
}
return 0;
}
一旦抛出异常,截到了就执行catch ,没有对应的catch程序会出现异常,且try快后边没执行的语句就不再执行了
try体中可以直接抛出异常,或者在try体中调用的函数体中间接的抛出。
try块中可以包含一个或者多个异常抛出点。但是需要注意的是,异常只要一抛出,对应的catch块捕捉到后,该try块中以下的代码体执行会被终止。代码执行直接进入对应的catch块中,最后catch块执行处理完异常后直接跳转至所有当前try块对应的catch块之后。
try{
throw.......
}catch(){}
c++异常捕获