一、抛出 / 捕获 多个类型异常对象
1、标准异常类
在 C++ 语言中 , 提供了一系列的 " 标准异常类 " ,
这些 " 标准异常类 " 都继承了 std::exception 基类 ,
在 标准库...中 , 抛出的异常 , 都是 标准异常类 , 都是 std::exception 类的子类 ;
2、标准异常类继承结构
标准异常类 定义在 std 命名空间 , 标准异常类 基类 std::exception...定义在 头文件中 ;
#include
标准异常类 基类 std::exception 中提供了 what() 函数 , 用于获取异常报错信息 , what...: 当 future 对象接收到无效的 promise 时 , 会抛出此异常 ;
std::lock_error : 当尝试锁定一个已经被锁定的互斥量(mutex)时 , 或者当尝试解锁一个未被锁定的互斥量时...std::deadlock : 当在两个或更多的线程间产生死锁时 , 会抛出此异常 ;
std::unexpected : 当未捕获处理函数中抛出的异常时 , 会抛出此异常 ;
二、自定义异常类继承