Bonjour tous le monde.
J'utilise une classe qui permet d'enregistrer des coordonnées et de tester si elle existes : bord de cadre, obstacle...

j'ai donc 4 méthodes de déplacement (haut, bas, droite, gauche).
Chacune des méthode effectue un test.
Or pour ce test j'ai besoin d'autres instances de cette même classe.
Probleme : Mon compilateur ne les voit pas déclarés...


!! J'utilise la SDL mais cela n'a pas d'importance !!


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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
 class Dessin
{
 public:
 int Image;  
 
 
 Dessin(const int Buffer_Image)
 {
  //...
 }
 
 ~Dessin()
 {SDL_FreeSurface(Surface);}
 
 
 
//--------------------------------------------------------------------
 bool Deplacement_Haut()
 {
 
 
      if (position.y==34)//Bord du cadre.
      return false;
 
      for(int i=0; i != Nombre_De_Caisse;++i)//Si devant il y a une caisse.
      {
        if ( position.x == Caisse[i].position.x && position.y-34 == Caisse[i].position.y)       //PROBLEME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
          return false;
      }
 
 
      for(int i=0; i != Nombre_De_Mur;++i)//Si devant il y a un mur.
      {
        if ( position.x == Mur[i].position.x && position.y-34 == Mur[i].position.y)
          return false;//PROBLEME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
      }
 
      for(int i=0; i != Nombre_De_Caisse;++i)//Si devant il y a un Objectif.
      {
 
        if ( position.x == Objectif[i].position.x && position.y-34 == Objectif[i].position.y)//PROBLEME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        { 
        //...
        }
 
      }   
 
    position.y -=34;   
    return true;    
 
 
 }
 
//--------------------------------------------------------------------
 
};
Les objets Dessin Caisse[int], Dessin Mur[int] et Dessin Objectif[int] sont déclarés dans main.

Comment résoudre ce probleme svp?