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é...
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();
    }
Merçi pour votre aide
NB : m_listObj est une TList contenant des éléments héritant de TArchiObj)