C++ 异常库 - bad_typeid


描述

此异常在空指针的 typeid 上引发。

宣言

以下是 std::bad_typeid 的声明。

class bad_typeid;

C++11

class bad_typeid;

参数

没有任何

返回值

没有任何

例外情况

无抛出保证- 没有成员抛出异常。

例子

在下面的 std::bad_typeid 示例中。

#include <iostream>
#include <typeinfo>
 
struct S { 
   virtual void f();
}; 
 
int main() {
   S* p = nullptr;
   try {
      std::cout << typeid(*p).name() << '\n';
   } catch(const std::bad_typeid& e) {
      std::cout << e.what() << '\n';
   }
}

示例输出应该是这样的 -

std::bad_typeid
异常.htm