Descrição
Esta é uma exceção lançada em caso de falha no elenco dinâmico.
Declaração
A seguir está a declaração para std :: bad_cast.
class bad_cast;
C ++ 11
class bad_cast;
Parâmetros
Nenhum
Valor de retorno
Nenhum
Exceções
No-throw guarantee - nenhum membro lança exceções.
Exemplo
No exemplo abaixo para std :: bad_cast.
#include <iostream>
#include <typeinfo>
struct Foo { virtual ~Foo() {} };
struct Bar { virtual ~Bar() {} };
int main() {
Bar b;
try {
Foo& f = dynamic_cast<Foo&>(b);
} catch(const std::bad_cast& e) {
std::cout << e.what() << '\n';
}
}
O exemplo de saída deve ser assim -
std::bad_cast