Bibliothèque d'exceptions C ++ - bad_typeid

La description

Cette exception levée sur typeid du pointeur nul.

Déclaration

Voici la déclaration pour std :: bad_typeid.

class bad_typeid;

C ++ 11

class bad_typeid;

Paramètres

aucun

Valeur de retour

aucun

Des exceptions

No-throw guarantee - aucun membre ne lance d'exceptions.

Exemple

Dans l'exemple ci-dessous pour 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';
   }
}

L'exemple de sortie devrait être comme ceci -

std::bad_typeid