std::bad_cast
De cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| Defined in header <typeinfo>
|
||
| class bad_cast : public std::exception; |
||
Una excepción de este tipo se produce cuando un dynamic_cast a un tipo de referencia no pasa la comprobación en tiempo de ejecución (por ejemplo, porque los tipos no están relacionados por herencia) .
Original:
An exception of this type is thrown when a dynamic_cast to a reference type fails the run-time check (e.g. because the types are not related by inheritance).
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Contenido |
[editar] Las funciones miembro
| construye un objeto bad_cast nuevo Original: constructs a new bad_cast object The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (miembro público función) | |
Inherited from std::exception
Member functions
| [virtual] |
destructs el objeto de excepción Original: destructs the exception object The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Virtual Member público of std::exception función)
|
| [virtual] |
devuelve una cadena explicativa Original: returns an explanatory string The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Virtual Member público of std::exception función)
|
[editar] Ejemplo
#include <iostream> #include <typeinfo> struct Foo { virtual void f() {} }; struct Bar { virtual void f() {} }; int main() { Bar b; try { Foo& f = dynamic_cast<Foo&>(b); } catch(const std::bad_cast& e) { std::cout << e.what() << '\n'; } }
Output:
Bad dynamic_cast!
