C++异常检查学习记录

C++异常检查学习记录


C++异常检查

throw (expression)抛出某种类型的异常, try catch语句捕获并处理异常。

throw(expression)

try
{
    
}
catch()
{
    
}

1、标准异常头文件

expection头文件,定义最通用的异常类expection。它只报告异常的发生,不提供额外的信息。

stdexcept头文件,定义几种常用的异常类,如下

异常类型 异常说明
exception 最常见问题
runtime_error 只有在运行时才能检出的问题
range_error 运行时错误:生成的结果超出了有意义的值域范围
overflow_error 运行时错误:计算上溢
underflow_error 运行时错误:计算下溢
logic_error 程序逻辑错误
domain_error 逻辑错误:参数对应的结果值不存在
invalide_argument 逻辑错误:无效参数
length_error 逻辑错误:试图创建一个超出该类型最大长度的对象
out_of_range 逻辑错误:使用一个超出有效范围的值

new头文件定义bad_alloc异常类型

type_info头文件定义bad_cast异常类型

bad_alloc、bad_cast、exception对象的初始化不允许提供初始值。其他异常类型需要用string或C风格的字符串初始化类对象,如下2中示例。

2、代码实践

#include <iostream>
#include <exception>
#include <stdexcept>
using namespace std;
int main(
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值