Bonjour,
Je souhaite faire un jeu en C++ avec la SFML, et pour cela je veux créer un gestionnaire d'évènements qui me permettrait de reporter tout évènement comme le début d'une partie, la fin d'un niveau,... et le transmettre à chaque partie du programme le souhaitant (via des fonctions de rappel passées à la classe).
Le vrai problème que je rencontre est le stockage des évènements (via une classe dédiée). Cette classe sera clairement au centre du programme donc il me parait risqué (et déconseillé) d'utiliser des dynamic_cast pour obtenir les informations propres à un évènement (Evenement étant une classe virtuelle pure dans ce cas).
Est-ce que ce serait une solution convaincante d'intégrer au code les types d'évènements?
Par exemple Evenement contiendrait un pointeur vers chaque type de donnée qu'il peut être, un seul de ces pointeurs étant effectivement utilisé.
Bref je bloque un peu sur un problème simple mais je souhaite surtout m'améliorer alors si vous avez mieux (sans doute) n'hésitez pas
Merci
Partager