Bonjour, voici:
J'ai deux classes:
class cPremClasse {
...
void fonction();
}
class cDeuxClass:public cPremClasse {
...
void fonction();
}
jusque la, ca va....
main()
{
cPremClasse *pClasse;
pClasse = (cDeuxClasse *)new cDeuxClasse();
pClasse->fonction(); // voici le probleme
delete pClasse;
}
Quand j'appelle la fonction 'fonction()', cela appelle la fonction de la classe 'cPremClasse '. Ca je peux comprendre. Mais puis-je appeler la fonction de la classe cDeuxClasse sans avoir a produire du code specifique?
Je m'explique: je ne veux pas utiliser les solutions a et b suivantes :
a)
((cDeuxClasse *)pClasse)->fonction();
b)
cDeuxClasse *pClasse;
pClasse->fonction();
Je veux que mon appel de fonction reste simple du genre :
- pClasse->fonction();
Tout en pouvant modifier le type de classe de mon pointeur dynamiquement ( lors la creation de la dite classe ).
Maintenant, ais-je ete clair?

Ensuite, avez-vous une idee?

_________________
---
Kaltar
Kaltar@yahoo.com
[...Reality is only a representation of your sense data which is always mixed with noise.]