Partage
  • Partager sur Facebook
  • Partager sur Twitter

tout un projet bloqué à cause d'une erreur imaginaire

structure et marco

26 juillet 2006 à 15:03:01

Bonjour à tous.

Ca fait 2 jours que je bloque complet sur une "erreur" complétement inventé par Visual C++ express(enfin je pense que c'est lui :-° ).

j'ai créé une structure et pour ne pas surcharger mon main j'ai créé un macro dans un .h où je me sers de cette structure. je suis surement pas très claire :euh: , je vais vous mettre mon code:



enum{lancier,bete,chevale,dragon,hero,nain,elfe,guerrier,archer,arbalete,vide};

typedef struct carte carte ;
     struct carte
     {     
     long pvMax;
     long pv;
     long ataque;
     long deplacement;
     long type;     
     long lancier;
     long bete;
     long chevale;
     long dragon;
     long hero;
     long nain;
     long elfe;
     long guerrier;
     long archer;
     long arbalete;
     long joueur;
     SDL_Rect positionCarte;
     SDL_Surface *petiteImageDeCarte;
     };




#define lesCartes()   carte cavalierDuNord ;\
                       /* cavalier du nord*/ 

          cavalierDuNord.pvMax = 6;\
      cavalierDuNord.pv = 6;\
      cavalierDuNord.ataque = 5;\
      cavalierDuNord.deplacement = 5;\
      cavalierDuNord.lancier = -2;\
      cavalierDuNord.guerrier = 2;\
      cavalierDuNord.archer = 1;\
      cavalierDuNord.bete = 0; \
      cavalierDuNord.chevale = 0; \
      cavalierDuNord.dragon = 0; \
      cavalierDuNord.hero = 0; \
      cavalierDuNord.nain = 0; \
      cavalierDuNord.elfe = 0; \
      cavalierDuNord.arbalete = 0; \
      cavalierDuNord.type = chevale; \
      cavalierDuNord.petiteImageDeCarte = SDL_LoadBMP("cavalierDuNord.bmp"); \
      cavalierDuNord.positionCarte.x = 0;\
      cavalierDuNord.positionCarte.y = 0;\
      cavalierDuNord.joueur = 0;\
                                                       /* armé d'artas*/  \
     carte armeDartas;\
\
      armeDartas.pvMax = 15;\
      armeDartas.pv = 15;\
      armeDartas.ataque = 4;\
      armeDartas.deplacement = 3;\
      armeDartas.lancier = 0;\
      armeDartas.guerrier = 0;\
      armeDartas.archer = 1;\
      armeDartas.bete = 0;\
      armeDartas.chevale = 3;\
      armeDartas.dragon = 0;\
      armeDartas.hero = 0;\
      armeDartas.nain = 0;\
      armeDartas.elfe = 0;\
      armeDartas.arbalete = 0;\
      armeDartas.type = guerrier;\
      armeDartas.positionCarte.x = 0;\
      armeDartas.positionCarte.y = 0;\
      armeDartas.joueur = 0;\


 
                                          /* guerrierDuNord*/  \
      carte guerrierDuNord;\

   guerrierDuNord.pvMax = 7;\
      guerrierDuNord.pv = 7;\
      guerrierDuNord.ataque = 5;\
      guerrierDuNord.deplacement = 3;\
      guerrierDuNord.lancier = 0;\
      guerrierDuNord.guerrier = 0;\
      guerrierDuNord.archer = 2;\
      guerrierDuNord.bete = 0;\
      guerrierDuNord.chevale = -1;\
      guerrierDuNord.dragon = 0;\
      guerrierDuNord.hero = 0;\
      guerrierDuNord.nain = 0;\
      guerrierDuNord.elfe = 0;\
      guerrierDuNord.arbalete = 1;\
      guerrierDuNord.type = guerrier;\
      guerrierDuNord.positionCarte.x = 0;\
      guerrierDuNord.positionCarte.y = 0;\
      guerrierDuNord.joueur = 0;\   




voilà tout le code du .h avec la deffinition de la structure et son utilisation dans la marco.

Maintenant voici les erreur:
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(35) : error C2143: erreur de syntaxe : absence de '{' avant '.'
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(35) : error C2059: erreur de syntaxe : '.'
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(36) : error C2143: erreur de syntaxe : absence de '{' avant '.'
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(36) : error C2059: erreur de syntaxe : '.'
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(37) : error C2143: erreur de syntaxe : absence de '{' avant '.'
c:\documents and settings\loic\bureau\ultime7\deffsructcarte.h(37) : error C2059: erreur de syntaxe : '.'
ET CA PENDANT ENCOR PLEIN DE LIGNE...


Voilà j'espère que quelqu'un réussira à me répondre...

Merci d'avance.
  • Partager sur Facebook
  • Partager sur Twitter