1.RTTI

Run Time Type Identification

  • typeid:
c++ RTTI(运行时类型识别) 与 异常处理
  • “==”为函数重载,方便比较对象类型
c++ RTTI(运行时类型识别) 与 异常处理
  • dynamic_cast:
c++ RTTI(运行时类型识别) 与 异常处理


  • dynamic_cast<这里只可以是类型的指针或引用>(  );
  • 要转换的和被转换的类型必须有虚函数,如下
  • c++ RTTI(运行时类型识别) 与 异常处理


  • typeid:返回的指针类型见下图
c++ RTTI(运行时类型识别) 与 异常处理c++ RTTI(运行时类型识别) 与 异常处理


2.异常处理

对有可能出现错误的地方做出预见性的安排。

try  -  catch  -  throw
基本思想:主逻辑与异常处理分离
c++ RTTI(运行时类型识别) 与 异常处理
  • catch(...)可以捕获所有的异常,比较无奈地做法

相关文章: