probleme heritage et constructeur
salut tout le monde . voila je fais un tetris et pour cela j'ai crée une classe forme et des des sous classe telles que barre cube etc...
voila la definition du constructeur de la classe forme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Forme::Forme(int color):m_color(color)
{
m_nom ="piece";
m_posx = 4;
m_posy=0;
m_etat= 1;
mov_forme_valid = true;
Cube cube_0(m_posx,m_posy,m_color,0),cube_1(m_posx,m_posy,m_color,1),cube_2(m_posx,m_posy,m_color,2),cube_3(m_posx,m_posy,m_color,3);
m_cube.push_back(cube_0);
m_cube.push_back(cube_1);
m_cube.push_back(cube_2);
m_cube.push_back(cube_3);
} |
et voila la declaration de la classe Barre :
Code:
1 2 3 4 5 6 7 8 9 10 11
| #ifndef def_barre
#define def_barre
#include "Forme.h"
class Barre : public Forme
{
public :
Barre(int color);
};
#endif |
et enfin le constructeur de Barre:
Code:
1 2 3 4 5 6 7 8 9 10 11
| Barre::Barre(int color):Forme(color)
{
m_cube[1].m_positionx = m_posx;
m_cube[1].m_positiony = m_posy;
m_cube[2].m_positionx = m_posx;
m_cube[2].m_positiony = m_posy + 1;
m_cube[3].m_positionx = m_posx;
m_cube[3].m_positiony = m_posy + 2;
m_cube[4].m_positionx = m_posx;
m_cube[4].m_positiony = m_posy + 3;
} |
voila mais le probleme c'est quand je veux creer un objet de type Barre il me dit que la classe n'a aucun constructeur !!!
c'est bizar ....pourtant il ya un constructeur !!