Le problème est qu'elle se trouve dans le même .cpp que la fonction ou je l'apelle :
void supprimerMap(char listeMap[], char sauvName[], SDL_Surface * screen)
{
char question[64];
sprintf(question, "Etes vous sur de vouloir supprimer %s ?",listeMap);
int choixUtilisateur = gestionBoiteDialogue(screen,"Suppression", question,"Oui","Non","\0");
if(choixUtilisateur == 0)
{
sprintf(question, "%s a bien ete supprimer",listeMap);
gestionBoiteDialogue(screen,"Suppression", question,"Ok","\0");
}
}
Maintenant j'aimerai mettre la fonction dans general.cpp, je crée donc general.cpp et general.h, je met le prototype dans le .h et la fonction dans le .cpp, j'inclus le .h dans tous les .h et là au moment ou le programme ouvre la fonction, il se ferme brutalement...
Est ce que tu pourais faire tourner le programme dans un debugger et nous dire:
- Quels sont les arguments que tu as passé a ta boite de dialogue
- A quelle ligne ca plante?
Sinon il y a un fichier stderr généré par la SDL. Qu'est ce qu'il contient?
les arguments c'est ceux dans la fonction supprimerMap() soit :
int choixUtilisateur = gestionBoiteDialogue(screen,"Suppression", question,"Oui","Non","\0");
Le problème es que je n'arrive pas à trouver la partie qui bogue. Lorsque j'utilise le debug le programme se compile normalement et quand j'ouvre la fonction il se ferme comme si je l'avais compiler normalement. Et j'ai pas plus d'information avec le debug..
stderr il se trouve a l'endroit ou il y a ton exécutable.
pour les arguments je te demande les valeurs : fais un printf ou un cout, ca te permettra de verrifier que screen n'est pas nul par exemple, ou que tu utilises bien l'élipse (...)
Ensuite sans passer par un debugger, je ne saurais pas trouver l'erreur en lisant le code.
Pour tester ta fonction : tu peux déjà regarder si elle est appelée en faisant un std::cout , et si elle arrive jusqu'à la fin avec un autre std::cout. SDL va écrire dans stdout.txt.
Si t'as rien ou pas de stdout.txt c'est que ta fonction n'est pas appelée.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
* Un wrapper C++ pour sqlite * Une alternative a boost units
* Un wrapper C++ pour sqlite * Une alternative a boost units
* Un wrapper C++ pour sqlite * Une alternative a boost units