Pb avec les classes

Résolu
Rouliann Messages postés 115 Date d'inscription samedi 20 décembre 2003 Statut Membre Dernière intervention 23 août 2008 - 5 déc. 2004 à 10:40
Rouliann Messages postés 115 Date d'inscription samedi 20 décembre 2003 Statut Membre Dernière intervention 23 août 2008 - 5 déc. 2004 à 16:15
Bonjour tout le monde!
Alors comme je sais pas trop d'où vient le pb je vais afficher ma source et les erreurs qu'elle génère! lol
//joueur.h
#include <sdl/sdl.h>
#include <sdl/sdl_image.h>

class Joueur
{
    private:
        SDL_Surface* raquette;
        //...
        
    public:
        Joueur(...);
        //...
        void drawTo(SDL_Surface* dest);
};

Joueur::Joueur(...)
{ 
}
   
void Joueur::drawTo(SDL_Surface* dest)
{
    SDL_BlitSurface(raquette, NULL, dest, NULL);
}    


//main.cpp

#include 
#include <sdl/sdl.h>
#include <sdl/sdl_image.h>

#include "joueur.h"

SDL_Surface* screen=NULL;

void initialisation(void)
{
    //...initialisation SDL...
    Joueur j1=Joueur(...);
}

void draw()
{
    j1.drawTo(screen);
    SDL_Flip(screen);
}

int main (int argc, char **argv)
{
    initialisation();
    while(1)
    {
         //...boucle d'evenements...
         draw();
    }
}                            


Et voici l'erreur :

In function 'void draw()':
20 C:\...\main.cpp request for member `drawTo' in `j1(double)', which is of non-aggregate type `double ()(double)'

----------------------------------------------
Life is short, program more!

2 réponses

plus_plus_fab Messages postés 232 Date d'inscription vendredi 9 janvier 2004 Statut Membre Dernière intervention 8 janvier 2005
5 déc. 2004 à 11:27
salut,

j1 est déclaré localement dans initialisation(), et tu t'en sers dans draw(), c'est normal.
Déclare j1 dans le main, et transmet le en paramètre, aux fonctions draw() et initialisation().
3
Rouliann Messages postés 115 Date d'inscription samedi 20 décembre 2003 Statut Membre Dernière intervention 23 août 2008 1
5 déc. 2004 à 16:15
Ah oué c'était tout simple! lol
Merci!!

----------------------------------------------
Life is short, program more!
0
Rejoignez-nous