Bonjour, j'ai un probleme et je ne sais pas à quoi c'est dû c'est pour ça que je poste ici pour essayer d'avoir une explication.
J'ai une classe Jeu avec des méthodes et des attributs, dont dans le cas qui nous interesse, un tableau d'entier à 2 dimensions :
Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class Jeu { public: // mes méthodes protected: // les attributs ... dont : int m_grille[8][6] };
J'ai aussi une sous classe Graphisme qui hérite de la classe Jeu :
Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 class Graphisme : public Jeu { public : // mes méthodes private : // mes attributs };
Voilà en gros la structure de mes classes.
Mais mon probleme c'est que mon tableau d'entier 2D change au cours du programme via des méthodes de la classe Jeu (change dans le sens où les valeurs contenues dans le tableau changent), je peux y acceder à l'exterieur de la classe grâçe à une methode get implémanté dans ma classe Jeu sans probleme, mais , et c'est là le probleme, lorsque je veux lire une case de mon tableau dans une des methodes de ma sous classe Graphisme, (un simple cout << m_grille[0][0] << endlpar exemple, cela m'affiche la valeur qu'avait la case lors de l'initialisation du tableau dans le constructeur Jeu.
Donc je ne comprend vraiment pas le principe, ma classe fille Graphisme hérite des attributs et des methodes, mais lorsque mes attributs changent dans la classe mere, elles ne sont pas "mis à jour" dans la classe fille?
Merci de votre aide, j'espere avoir été assez clair![]()
Partager