美文网首页
读书笔记 - C++异常处理机制

读书笔记 - C++异常处理机制

作者: Dean_mmm | 来源:发表于2019-01-02 16:15 被阅读0次

这是在做项目的过程中碰到异常处理,就看书稍微总结了下,这篇读书笔记只是一个小结,写这个的目的更多的是想留给自己看

异常的定义
程序执行过程中发生的不正常状态。

异常处理的优点
增加程序健壮性;将错误处理代码与正常程序分隔开;函数可以将异常抛给其调用者。

异常处理的特点
throw 语句相当于一个内部函数调用,只是调用的不是函数而是catch块。 但是与内部函数调用不同的情况是catch块执行完后程序流不会返回到throw语句而是会执行catch块的下一条语句。而且catch块没有返回值。

异常处理模版
try{
Code;
throw exception;
More Code;
}
catch(type e){
Code to process the exception;
}
throw catch 的参数type可以用 int 这些基本类型也可以用C++预定义的类,这些类的根为(exception),包含一个虚函数what();这个函数返回一个异常对象的错误信息。
也可以自定义异常类,但通常要派生于exception。

多重异常捕获
try{
}
catch ...
catch ...
多个catch块中的不同类型异常的次序很重要。基类对应 的catch块要在其派生类之后。
异常的传播

异常传播
重抛出异常 (rethrow)
如果在异常处理中无法处理一个异常,或者它想通知调用者发生了一个异常C++允许它重新抛出一个异常。
try{
statements;
}
catch(TheException &ex){
...

异常规约
在函数头部声明异常规约,表面这个函数会抛出什么异常。有利于写出健壮的程序。
e.g. void check(double side) throw(runtimeexception)
何时使用异常处理机制
异常处理机制是用来解决意外错误状态的,不要用try-catch来处理简单的、意料内的情况。

相关文章

  • 异常( Exceptions)

    异常处理是C++的一项语言机制,用于在程序中处理异常事件。异常事件在C++中表示为异常对象。 优点: 异常允许上层...

  • NDK开发---C++学习(七):异常

    前言 C++的异常处理机制能够将异常检测与异常处理分离开来,当异常发生时,它能自动调用异常处理程序进行错误处理。把...

  • c++ 异常

    异常机制 c++的异常机制与大多数语言相同,分为三个部分: 引发异常; 使用处理程序捕获异常; 使用try块; 通...

  • python学习笔记之--异常处理

    类似于C++/Java等高级语言,python也有异常的处理机制 异常捕获和处理 在python语言中python...

  • (五)C++中的异常处理与模板类

    C++中的异常处理与模板类 一、C++ 中的异常处理 1、异常处理 在C++ 中可以抛出任何类型的异常,根据抛出的...

  • 异常处理机制

    c++中的异常体系剖析 1.异常处理机制的相关语法: 增强错误恢复能力是提高代码健壮性最有力的途径之一。异常处理作...

  • 读书笔记 - C++异常处理机制

    这是在做项目的过程中碰到异常处理,就看书稍微总结了下,这篇读书笔记只是一个小结,写这个的目的更多的是想留给自己看 ...

  • C++异常处理机制

    1、C函数的调用和返回 要理解C++异常机制实现之前,首先要了解一个函数的调用和返回机制,这里面就要涉及到ESP和...

  • 你的c++团队还在禁用异常处理吗?

    关于c++的异常处理,网上有很多的争议,本文会介绍c++的异常处理的使用,以及我们应该使用异常处理吗,以及使用异常...

  • Android NDK开发之旅23--C++--异常处理

    异常处理 与Java类似,C++也有异常处理。 异常类型 C++中,异常的类型是任意的,如下: throw不同类型...

网友评论

      本文标题:读书笔记 - C++异常处理机制

      本文链接:https://www.haomeiwen.com/subject/nqwzlqtx.html