Bonjour à tous,
voila mon soucis...
J'ai crée une classe (TArchiObj) contenant une fonction virtuelle pure (void PaintShape() = 0
Dans les classes (TRectObj, TCircleObj,...) héritant de celle ci j'ai donc redéfini la fonction PaintShape... seulement voila... quand j'utilise cette fonction par le biais de la classe TArchiObj, j'ai une erreur "Pure virtual function called"...
J'aimerais savoir si je peux éviter ce genre d'erreur... et surtout comment...
Voici le code appellant pour plus de clarté...
Merçi pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 TArchiObj* archiTemp = 0; for (int i=0; i<m_listObj->Count; i++) { archiTemp = ((TArchiObj*)(*m_listObj)[i]); if (!archiTemp) Application->MessageBox("Erreur liste","",0); else archiTemp->PaintObj(); }
NB : m_listObj est une TList contenant des éléments héritant de TArchiObj)
Partager