bonjour j'ai un problème avec les pointeurs.
je fais un jeu spaceinvaders pour apprende.

voici mon code avant, celui-çi compile et s'exécute bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
CSpriteBase cInvadersBase[2][8];
CSprite cInvadersSprite[2][8];
 
for(int i = 0; i < 2; i++ )
	{
		for(int y = 0; y < 8; y++)
		{
			cInvadersBase[i][y].init("Data/");
			cInvadersSprite[i][y].init(&cInvadersBase[i][y],back);
  			cInvadersSprite[i]   [y].set(usiSprite_ACoordX1,usiSprite_ACoordY1);
  			cInvadersSprite[i][y].setSpeed(0);
			cInvadersSprite[i][y].hitAndDestroyed = 0;
		}
 
	}
maintenant voici la version modifiée avec pointeur d'objets
celui-çi compile, mais plante à l'exécution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
CSpriteBase* cInvadersBase[2][8]
CSprite* cInvadersSprite[2][8]
for(int i = 0; i < 2; i++ )
	{
		for(int y = 0; y < 8; y++)
		{
			cInvadersBase[i][y]->init("Data/");
			cInvadersSprite[i][y]->init(cInvadersBase[i][y],back);
  			cInvadersSprite[i] y]->set(usiSprite_ACoordX1,usiSprite_ACoordY1);
  			cInvadersSprite[i][y]->setSpeed(0);
			cInvadersSprite[i][y]->hitAndDestroyed = 0;
		}
 
	}
je crois que j'ai oublier quelque chose ou celà est juste une erreur de syntaxte. en tout les cas merci de répondre si vous avez une idée.