异常说明符

本文探讨了如何在遇到未捕获异常时保护程序状态的方法,同时介绍了异常说明符的使用方式及其在函数声明中指明异常抛出可能性的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这种情况下,如果rungame()或任何它调用的函数抛出一个未捕获的异常,异常将解除了栈和最终被捕捉到的所有处理程序。这将防止main()终止,并给我们一个机会去打印我们的选择错误,然后保存用户的状态在退出之前。这可以捕捉和处理未预料到的问题,可能是有用的。

异常说明符

本款应视为可选阅读因为异常说明符是在实践中很少使用,不能很好的支持的编译器,和Bjarne Stroustrup(C + +的创造者)认为他们是一个失败的试验。

异常说明符是一种机制,允许我们使用一个函数声明中指定一个函数是否可能会或不会抛出异常。这可以决定一个函数调用的需要放在try块或不可。

有三种类型的异常说明符,所有这些都使用的是抛出(……)语法。

首先,我们可以用一个空throw声明表示函数不抛出任何异常自身之外的:

1
int DoSomething() throw(); // does not throw exceptions

请注意,()仍然可以使用例外,只要是在内部处理。任何函数声明与throw()应该使程序立即终止,如果它试图抛出一个异常外,本身但实施参差不齐
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值