Bonjour,

J'ai une erreur de compilation avec mingw:

D:\Programmation\projects\test reseau 2\interface_moteur.hpp|43|error: field `les_commandes' has incomplete type|

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
//commandes.hpp
 
///
/*
classe pour mettre en commun les contrôles en cour de jeu
*/
///
 
#ifndef _COMMANDES_
#define _COMMANDES_
 
class Commandes;
 
#include <SDL/SDL.h>
#include "singleton.hpp"
#include "general.hpp"
#include "interface_moteur.hpp"
 
 
class Commandes
{
    public:
    Commandes(interface_moteur* le_moteur_) : le_moteur(le_moteur_){}
    ~Commandes();
 
    void event(SDL_Event event);
 
    protected:
    //rien
 
    private:
    Commandes();
    interface_moteur* le_moteur;
 
    void appui(SDL_Event event);
};
 
#endif
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
//interface_moteur.hpp
 
///
/*
juste pour quelques appels pour l'instant, classe virtuelle pure
 
*/
///
 
#ifndef _INTERFACE_MOTEUR_
#define _INTERFACE_MOTEUR_
 
class interface_moteur;
 
#include <SDL/SDL.h>
#include "commandes.hpp"
//#include "jeu.hpp"
 
enum{HAUT,BAS,GAUCHE,DROITE};
 
class interface_moteur
{
    friend class Commandes;
    public:
    interface_moteur() : continuer(true),les_commandes(this){}
 
    virtual ~interface_moteur(){}
 
    virtual bool actualisation(SDL_Surface* surface,long temps) = 0;
 
    virtual void evenement(SDL_Event event) = 0;
 
    virtual void mouvement(int direction) = 0;
 
    void Continue(bool b){continuer = b;}
 
    //void TheTime(long temps)
 
    protected:
    bool continuer;
    Commandes les_commandes;
    private:
 
};
 
void corrigerPosition(SDL_Rect *p);
 
#endif
Je vois vraiment pas comment faire...

Merci si vous pouvez m'aider