Voilà j'ai un petit problème avec les ligatures dynamiques:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
MaBase* pBase[4][5]; //déclaration du tableau
 
pBase[0][0] = new MaBase(); //occurence de la classe de base
 
pBase[0][1] = new MaDerivee();//occurence de la classe dérivée
Jusque là tout semble marcher mais en fait non car pBase[0][1] ne possède pas les attributs de MaDerivee.

De plus j'ai fait un test du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
MaDerivee *test = new MaDerivee();//occurence de la classe dérivée
et test possède l'attribut de MaDerivee et seulement quelques uns de la classe de base.

Le problème doit être dans les constructeurs, je pense. Ils sont très simples pourtant.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
MaBase::MaBase()
{
	attribut1 = 0; //posséder par l'occurence test
	attribut2 = 0;// pas posséder
	attribut3 = "";//posséder
	attribut4 = "";//pas posséder
	for(int i = 0; i < 2; i++)
		attribut5[i] = "";//posséder
}
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
MaDerivee::MaDerivee():MaBase()
{
 
}
sachant que MaDerivee et MaBase possède aussi des attributs de type: classe développée par moi.

problème: pBase[0][1] ne possede pas les arguments de la dérivée et les occurences de la dérivée n'ont pas accès à tous les attributs de la base