C++ primer 第5章 语句

5.1 简单语句

5.2语句作用域

5.3 条件语句

5.4迭代语句

5.5跳转语句

5.6try语句和异常处理

  • 异常:存在于运行时的反常行为,这些行为超出了函数正常功能的范围
  • throw表达式:抛出异常
  • try语句块:处理异常
  • 一套异常类

5.6.1 throw表达式

throw runtime_error("ss");

runtime_error是标准库异常类型中的一种,定义在stdexcept头文件中.我们必须初始化runtime_error的对象,方式是提供一个string对象或者一个C风格的字符串.

5.6.2 try语句块

在这里插入图片描述
在这里插入图片描述

5.6.3 标准异常

定义在4个头文件中:

  • exception头文件定义了最通用的异常类exception.它值报告异常的发生,不提供任何额外信息
  • stdexcept头文件定义几种常用的异常类
  • new头文件定义了bad_alloc异常类型
  • type_info头文件定义了bad_cast异常类型
    在这里插入图片描述
  • 标准库异常类只定义了几种运算,包括创建或者拷贝异常类型的对象,以及为异常类型的对象赋值
  • 我们只能以默认初始化的方式初始化exception,bab_allocbad_cast对象,不允许给这些对象提供任何初始值.而其他类型相反,不行默认初始化,必须以string对象或者c风格字符串进行初始化
  • 异常类型定义了一个名为what的成员函数,该函数没有任何参数,返回值是一个c风格的字符串的const char *.提供关于异常的一些文本信息
  • what函数的返回,如果异常类型有一个字符串初始化,则what返回该字符串,对于无初始值的异常类型来说,what返回的内容有编译器决定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值