|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre habitué
![]() Alexandre Étudiant Inscription : janvier 2011 Messages : 155 ![]() |
Bonjour,
J'essaye en vain d'instaurer un système de thread dans mon code mais j'ai une belle erreur à la compilation : Code :
error:*argument*of*type*'int*(mainwindow::)(void*)'*does*not*match*'int*(*)(void*)'| Voici ma fonction thread : Code :
et la déclaration de SDL_thread dans une autre fonction : Code :
Merci |
||||
|
00
|
|
|
#2 |
![]() ![]() Inscription : décembre 2006 Messages : 1 612 ![]() |
Salut,
de par le message de l'erreur, je pense à vue de nez que ton souci proviendrait du fait que ta fonction est en fait une méthode (ie. une fonction définie dans une classe), pas ce qu'attend SDL_CreateThread(), à savoir une fonction 'classique', définie en dehors d'une classe, comme n'importe quelle fonction en langage C. Les fonctions et les méthodes sont en effet deux concepts différents en C++, car (pour faire simple) la méthode englobe une sorte d'argument supplémentaire 'caché' (en tout cas par la syntaxe du C++), à savoir le pointeur 'this' de l'instance de classe qui constitue le contexte dans lequel elle est appelée.
__________________
Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android. |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Alexandre Étudiant Inscription : janvier 2011 Messages : 155 ![]() |
Enfaite c'est en mélangeant la SDL avec le C++ que les problèmes arrivent, tu as raison.
J'ai donc tout refait en C est ça marche. Merci de ton aide |
|
00
|
Copyright © 2000-2013 - www.developpez.com