Citation:
Si j'ai bien compris, toutes tes classes hériteraient de cEvent ?
Pourquoi ne pas penser à une map (cf loulou) genre :
map<string,cEvent*> rep ?
le string pourrait être un nom unique te permettant de retrouver le cEvent* correspondant. Si ce nom unique n'est pas important, pense à un set.
C'est justement à la base de la solution, sauf qu'on stocke des fonctions de création et non des instances.
Citation:
Mais ca se réume d'une maniére ou d'une autre a , pour chaque nouvelle classe , entrer une instruction .
Dans le cas de la factory, une entrée dans le map, dans mon cas, un if ... honntement , pour moi ca reviens au même :p
La différence est pourtant énorme : sans fabrique, tu dois aller modifier l'implémentation de cEventManager à chaque nouvelle classe, alors qu'avec la solution proposée tu n'y touches plus ; un ajout de classe se fait via un appel de fonction.