第六十四课 C++异常处理方式(上)
一、C++ 异常处理
-
C++内置了异常处理的语法元素(try…catch…
try语句处理正常代码逻辑
catch语句处理异常情况
try语句的异常由对应的catch语句处理
try { ... } catch(.../*异常信息*/) { ...异常处理 }
-
C++ 通过 throw语句抛出异常信息
二、C++ 异常处理分析
-
throw 抛出的异常必须被 catch 处理
当前函数能够处理异常,程序继续往下执行
当前函数无法处理异常,则函数停止执行,并返回
-
未被处理的异常会顺着函数调用栈向上传播,知道被处理位置,否则程序将停止执行
三、C++ 异常处理
-
同一个 try 语句可以跟上多个 catch 语句
catch 语句可以定义具体处理的异常类型
不同类型的异常由不同的catch语句负责处理
try 语句中可以抛出任何类型的异常
catch (…) 用于处理所有类型的异常
任何异常都只能被捕捉一次
四、小结
- C++ 中直接支持异常处理的概念
- try…catch…是C++中异常处理的专用语句
- try 语句处理正常代码逻辑,catch 语句处理异常情况
- 同一个 try 语句可以跟上多个 catch 语句
- 异常处理必须严格匹配,不进行任何的类型转换