Descrição
É uma exceção do construtor.
Declaração
A seguir está a declaração para std :: exception :: exception.
exception() throw();
exception (const exception& e) throw();
C ++ 11
exception() noexcept;
exception (const exception& e) noexcept;
Parâmetros
e - É um outro objeto de exceção.
Valor de retorno
Nenhum
Exceções
No-throw guarantee - nenhum membro lança exceções.
Exemplo
No exemplo abaixo para 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;
}
O exemplo de saída deve ser assim -
Exception test!
std::exception