Scott Meyer
nel suo libro Effective C++
dice dynamic_cast
viene utilizzato per eseguire calcoli di sicurezza verso il basso o attraverso una gerarchia di ereditarietà. Cioè, tu usi dynamic_cast per eseguire il cast di puntatori o riferimenti a oggetti di classe base in puntatori o riferimenti a oggetti di classe di base derivati o fratelli in modo tale che tu possa determinare se i cast sono riusciti.Come identificare i cast falliti usando l'operatore dynamic_cast?
Le conversioni non riuscite sono indicate da un puntatore nullo (quando si esegue il cast dei puntatori) o un'eccezione (quando si esegue il cast dei riferimenti).
Vorrei ottenere due frammenti di codice che mostrano il cast fallito in caso di puntatore di lancio e il riferimento di casting può essere indicato.
Stai chiedendo esempi di codice per verificare se un puntatore è nullo e il codice che rileva un'eccezione? –
No. Non capisco come possano fallire i casting come menzionato da Scott. Un frammento di codice sarebbe sicuramente d'aiuto. –
http://en.wikipedia.org/wiki/Dynamic_cast –