Historique des modifications - Message

Message #10767

Sujet: Bouton pour un nouveau personnage


Type Date Auteur Contenu
Création du message 10-09-2012 09:54:53 johnplayer
Tu créés ta variable context mais faut peut-être affecter ses membres parce que actuellement dans ton event receiver la variable contexte que tu utilises ne contient pas les pointeurs de ton application.

De plus, des pointeurs sans initialisation c'est super dangereux!
Pour l'anecdote, j'ai eu une fois un pointeur "perdu" (la ressource pointée avait été libérée mais le pointeur contenait encore l'adresse) qui m'a fait planté Windows. Vu que j'avais libéré l'espace, Windows l'a utilisé pour ces petites affaires et résultat : un redémarrage brusque de Windows. Donc les pointeurs c'est super mais faut faire super gaffe! Les pointeurs exigent une certaine rigueur (création + initialisation à NULL si rien à affecter à la création, utilisation, destruction de la ressources pointée, mise à NULL du pointeur). Crois-moi, ça t'éviteras de très mauvaises surprises!^^

Code c++ :


struct SAppContext
{
    IrrlichtDevice *device;
    s32 counter;
    ISceneManager *smgr;
    ICameraSceneNode *camera;

    //! constructeur par defaut
    SAppContext() : device(NULL), counter(0), smgr(NULL), camera(NULL) {}
};


Ensuite dans ton main :

Code c++ :


    SAppContext context;
    context.device = device;
    context.smgr = smgr;
    context.camera = camera;
    MyEventReceiver receiver(context);
    device->setEventReceiver(&receiver);


Voilà ça devrait marcher maintenant. Enfin, si il n'y a rien d'autres.^^

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
156 invités en ligne
membre en ligne: -
RSS Feed