Bonjour à toutes et à tous,

Voici mon soucis : j'ai une hiérarchie de classes et j'utilise un pointeur sur la classe de base pour manipuler tous mes objets. Ma classe de base étant abstraite et ses fonctions virtuelles, mes classes dérivées se chargent de l'implémentation des fonctions .. bref, je voudrais savoir comment faire pour déterminer le type des objets à partir du pointeur sur la classe de base qui me sert à manipuler mes objets.

Je sais, ce n'est pas très clair alors je vais ajouter quelques lignes de codes.

Si j'ai un hiérachie de classe comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
class CBase
{
}
 
class CInherited : public CBase
{
}
et que dans mon programme je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
CInherited* pI = new CInherited;
CBase* pB = pI;
Comment je peux déterminer que pI est de type CInherited ?

D'avance merci pour vos réponses.