程序员肖邦的博客 享受编程和技术所带来的快乐

C++的异常

2015-06-11
肖邦
C++

C++ 的异常。

  • 错误与错误处理
  • 异常处理语法
  • 异常处理流程
  • 异常说明
  • 异常处理模式
  • 构造函数中的异常
  • 析构函数中的异常
  • 标准库异常

一、错误与错误处理

  • 何为错误
    • 语法错误:程序员在编码阶段解决并通过编译
    • 逻辑错误:程序员借助于调试工具诊断并修改
    • 功能错误:程序员修改代码,测试员回归验证
    • 设计缺陷:设计员修改设计,程序员重新编码
    • 需求不符:分析员修改需求,设计员调整设计
    • 环境异常:客服协助用户调整程序的运行环境
    • 操作不当:客服指导用户按照正确的方法操作
  • 错误处理主要针对在实际运行环境中发生,却在设计、编码和测试阶段无法预料的,各种潜在的异常。
  • 三种典型的错误处理机制
    • 通过返回值返回错误信息
        优点:所有局部对象都能正确地被析构
        缺点:逐层判断,流程繁琐
      
    • 借助setjmp/longjmp 远程跳转
        优点:一步到位,流程简单
        缺点:某些局部对象可能因此丧失被析构的机会
      
    • 抛出 —- 捕获异常现象
        形式上一步到位,流程简单
        实际上逐层析构局部对象,避免内存泄露
      

上一篇 C++的多态

Comments

Content