Bonjour à tous,
Je sais que c'est un peu long, mais je suis obligé de décrire mon cas avant de poser ma question.
J'ai une classe qui possède un objet "objetPrincipal" de type TGeneric.
La classe TGeneric possède des méthodes virtuelles a,b,c,...
J'ai différentes classes filles (TFille1, TFille2, ...) qui dérivent toutes directement de TGeneric et qui redéfinissent toutes différemment les méthodes virtuelles a,b,c,...
En fonction d'un fichier de configuration, j'aimerais que mon objet soit du type TFille1 ou TFille2 ou ... pour utiliser les méthodes a,b,c,... de ces classes filles.
Le but est que je puisse toujours appeller dans mon programme "objetPrincipal" et ces méthodes virtuelles sans me soucier de connaître le type défini par la config.
Bien entendu j'aimerais que les méthodes lancées soient les métodes filles a,b,c,...
Quelqu'un peut-il m'éclairer pour me dire comment je peux "changer le type" de mon objetPrincipal dynamiquement ?
J'ai vu dans la FAQ le dynamic_cast, mais je crois être obligé de faire une référence sur un objet fils alors que je ne veux pas instancier d'autres objets ou au besoin un objet temporaire uniquement pour le cast.
Merci pour votre aide, et désolé si la réponse est évidente, je ne suis pas un expert en POO .
Partager