Bonjour!

Je n'ai jusqu'ici jamais utilisé de dynamic_cast , apparemment parceque jusqu'ici j'ai assez bien conçu mes hierarchies de classes pour que cela soit inutile ...
Mais comme je sais que par exemple le dynamic_cast est utilisé par beaucoup de gens apparemment, je me demandais exactement en quoi cela consistait et j'ai donc jetté un oeil à la FAQ.

J'aurais besoin d'une précision sur ce point en particulier :

Citation Envoyé par Loulou24
Le downcasting est donc à utiliser avec parcimonie, lorsque l'on n'a pas le choix ou que l'on sait exactement ce que l'on fait. Par exemple dans le cas des plugin, ou encore lorsque l'on travaille avec un code, une bibliothèque ou une API qui ne connaîtrait (et donc ne pourrait manipuler) que la classe de base d'une hiérarchie. Les classes dérivées étant écrites par le client, le downcasting est donc une solution simple pour communiquer avec la bibliothèque en question.
A ce que je comprends, comme je le pensais, il est inutile de faire du downcasting quand la hierarchie des classes est bien organisée et que la fonctio dans laquelle on se trouve est soit spécialisée pour une classe de cette hierarchie et ses héritières, soit pour une classe virtuelle et donc pour toutes ses héritières.
En lisant ce texte je comprends bien qu'il y a un(?) cas lorsqu'on utilise une lib exterieure où on a besoin du dynamic_cast, mais je ne vois pas bien exactement dans quel(s?) cas exactement.

Est-ce que quelqu'un pourrais me donner un exemple svp?

Merci de votre attention!