Libreria delle eccezioni C ++ - Costruttore

Descrizione

È un'eccezione del costruttore.

Dichiarazione

Di seguito è riportata la dichiarazione per std :: exception :: exception.

exception() throw();
exception (const exception& e) throw();

C ++ 11

exception() noexcept;
exception (const exception& e) noexcept;

Parametri

e - È un altro oggetto eccezione.

Valore di ritorno

nessuna

Eccezioni

No-throw guarantee - nessun membro genera eccezioni.

Esempio

Nell'esempio seguente per std :: exception :: exception.

#include <iostream>       
#include <exception>      

struct ooops : std::exception {
   const char* what() const noexcept {return "Exception test!\n";}
};

int main () {
   ooops e;
   std::exception* p = &e;
   try {
      throw e;       
   } catch (std::exception& ex) {
      std::cout << ex.what();
   }
   try {
      throw *p;      
   } catch (std::exception& ex) {
      std::cout << ex.what();
   }
   return 0;
}

L'output di esempio dovrebbe essere così:

Exception test!
std::exception