Problème d'héritage classe dérivée
Bonjour,
Je dispose de deux classes Base et Derived dont Derived dérive de Base. Voici la définition simplifiée des deux classes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
class Base
{
public:
Base();
~Base();
// Plein de méthodes
void do();
void do1();
void do2();
private:
std::vector<uneStructure*> container;
};
class Derived : public Base
{
public:
Derived();
~Derived();
void preDo();
private:
std::vector<uneStructure*> container;
}; |
Les méthodes do1 et do2 sont des procédures récursives inclues dans do et dont j'ai besoin dans ma classe dérivée. Cependant, lorsque j'exécute la méthode do depuis la classe dérivée, rien ne se passe. Si je copîe le vecteur container dans un objet Base et que j'exécute do, tout se déroule comme je le souhaite.
Code:
1 2 3 4 5 6 7
|
Derived* der = new Derived();
der->preDo();
der->do(); // Aucun résultat
Base* bas = new Base(der->getContainer());
bas->do(); // Resultat souhaité |
Pourriez-vous m'aider svp ?
Merci.