java中的try catch throw_异常处理(try catch throw)详解(C++)

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

如果您喜欢玩一款游戏,您必须先要很好理解这款游戏的规则。同样主人公阿愚喜欢上C++中异常处理后,当然也首先关注它的游戏规则,这就是C++中异常处理的语法。

关键字

1、 try

2、 catch

3、 throw

其中关键字try表示定义一个受到监控、受到保护的程序代码块;关键字catch与try遥相呼应,定义当try block(受监控的程序块)出现异常时,错误处理的程序模块,并且每个catch block都带一个参数(类似于函数定义时的数那样),这个参数的数据类型用于异常对象的数据类型进行匹配;而throw则是检测到一个异常错误发生后向外抛出一个异常事件,通知对应的catch程序块执行对应的错误处理。

语法

1、还是给一个例子吧!如下:

int main()

{

cout <

//定义一个try block,它是用一对花括号{}所括起来的块作用域的代码块

try

{

cout <

//这里抛出一个异常(其中异常对象的数据类型是int,值为1)

//由于在try block中的代码是受到监控保护的,所以抛出异常后,程序的

//控制流便转到随后的catch block中

throw 1;

cout <

}

//这里必须相对应地,至少定义一个catch block,同样它也是用花括号括起来的

catch( int& value )

{

cout <

}

cout <

return 0;

}

2、语法很简单吧!的确如此。另外一个try block可以有多个对应的catch block,可为什么要多个catch block呢?这是因为每个catch block匹配一种类型的异常错误对象的处理,多个catch block呢就可以针对不同的异常错误类型分别处理。毕竟异常错误也是分级别的呀!有致命的、有一般的、有警告的,甚至还有的只是事件通知。例子如下:

int main()

{

try

{

cout <

throw 1;

cout <

throw 0.5;

}

catch( int& value )

{

cout <

}

catch( double& d_value )

{

cout <

}

return 0;

}

3、一个函数中可以有多个trycatch结构块,例子如下:

int main()

{

try

{

cout <

throw 1;

}

catch( int& value )

{

cout <

}

//这里是二个trycatch结构块,当然也可以有第三、第四个,甚至更多

try

{

cout <

throw 0.5;

}

catch( double& d_value )

{

cout <

}

return 0;

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值