6 réponses
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
29 mai 2022 à 11:18
29 mai 2022 à 11:18
Bonjour,
Le compilateur ne semble savoir ce qu'est
Peut-être manque-t-il l'
Le compilateur ne semble savoir ce qu'est
RectangleShaped'où les 2 erreurs sur cette ligne.
Peut-être manque-t-il l'
includequi apporte la définition de
RectangleShapeavant ta définition de la
struct Platform.
J'utilise déjà
Si l'include dont tu parle est
dans le main.cpp, il y est bien.
J'ai aussi fait le
pour associer le répertoire de ma librairie où se situe sf:: RectangleShape
C'est pour ça que je comprend pas, le programme semble bon... Je suis sur VC++ 2022 si ça peut être utile.
RetangleShapea d'autres endroits de mon programme et il marche très bien...
Si l'include dont tu parle est
#include "Main.h"
dans le main.cpp, il y est bien.
J'ai aussi fait le
#include "SFML-graphics.h"
pour associer le répertoire de ma librairie où se situe sf:: RectangleShape
C'est pour ça que je comprend pas, le programme semble bon... Je suis sur VC++ 2022 si ça peut être utile.
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
29 mai 2022 à 18:17
29 mai 2022 à 18:17
Si le type
RectangleShapeest bien visible, c'est que son nom est incomplet, il fait écrire
sf::RectangleShapeau lieu de
RectangleShape.
L'erreur est résolue, merci beaucoup !
Mais j'ai une autre erreur dans le programme du même genre :
J'ai une fonction GroundDetect qui prend en parrametre mon pointeur sur des platformes.
La définition :
Et j'ai une erreur dans la déclaration :
Gravité : Erreur
Code : C2061
Description : erreur de syntaxe : identificateur 'Platform'
Ligne : 47
J'en ai conclu que Platform n'était pas détecté en tant que structure mais :
- J'ai bien mis l'include
- J'ai bien orthographié Platform
Je sais pas quoi faire avec ce programme XD
Mais j'ai une autre erreur dans le programme du même genre :
J'ai une fonction GroundDetect qui prend en parrametre mon pointeur sur des platformes.
La définition :
bool Block::GroundDetect(Platform* platforms) { if (Y_block > WIN_HEIGHT - blockSize) { return true; } else { return false; } for (int i = 0; i < 5; i++) { if (Y_block + blockSize == platforms[i].posY && X_block + blockSize > platforms[i].posX && X_block < platforms[i].posX + platforms[i].width) { return true; } else { return false; } } }
Et j'ai une erreur dans la déclaration :
bool GroundDetect(Platform* platform);L.47
Gravité : Erreur
Code : C2061
Description : erreur de syntaxe : identificateur 'Platform'
Ligne : 47
J'en ai conclu que Platform n'était pas détecté en tant que structure mais :
- J'ai bien mis l'include
main.h
- J'ai bien orthographié Platform
Je sais pas quoi faire avec ce programme XD
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
30 mai 2022 à 20:50
30 mai 2022 à 20:50
Exactement, la même réponse que pour .
Le compilateur ne semble savoir ce qu'est
Peut-être manque-t-il l'
PS: Et ma boule de cristal étant en réparation, je n'ai toujours aucune idée du fichier d'entête où tu as défini
RectangleShape:
Le compilateur ne semble savoir ce qu'est
Platformd'où ton erreur sur cette ligne.
Peut-être manque-t-il l'
includequi apporte la définition de
struct Platformavant ta définition de la
bool Block::GroundDetect(Platform* platforms).
PS: Et ma boule de cristal étant en réparation, je n'ai toujours aucune idée du fichier d'entête où tu as défini
struct Platform, est-ce dans ce main.h ? Je ne sais pas!
XD
Pardon, je pensais que tu te souviendrais tu premier post ou j'ai précisé que ma structure faisait partie de main.h
Enfin ducoup j'ai vérifié et l'include est bien mise sur le fichier de la déclaration et de la définition de
J'ai testé encore une fois et l'erreur n'a pas disparue miraculeusement !
Pour un récap : La structure est déclaré dans le main.h, ainsi que mon pointeur
Je les inclue donc sur block.h (déclartion de GroundDetect)
ET sur block.cpp (définition de GroundDetect) .
PS : Block est une classe pour le personnage de mon jeu de plateforme.
Pardon, je pensais que tu te souviendrais tu premier post ou j'ai précisé que ma structure faisait partie de main.h
Enfin ducoup j'ai vérifié et l'include est bien mise sur le fichier de la déclaration et de la définition de
Block::GroundDetect.
J'ai testé encore une fois et l'erreur n'a pas disparue miraculeusement !
Pour un récap : La structure est déclaré dans le main.h, ainsi que mon pointeur
Platform* platforms;
Je les inclue donc sur block.h (déclartion de GroundDetect)
ET sur block.cpp (définition de GroundDetect) .
PS : Block est une classe pour le personnage de mon jeu de plateforme.