IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Modifier un objet extern


Sujet :

C++

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut Modifier un objet extern
    Je veux déclarer un objet de la classe Toutlekit comme variable globale

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    extern Toutlekit *toutlekit;
    Je crée ensuite une fonction main (simplifiée ici)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Toutlekit *toutlekit;
     
    int main()
    {
    toutlekit->init();
    Toutlekit *tout=toutlekit;
    }
    L'appel de la fonction init() ne modifie pas l'objet toutlekit, je ne comprends rien parce que ça fonctionnait avant mais la le programme a décidé que init() modifie un autre objet inconnu qui n'existe pas. Aussi lorsque j'assigne tout, il ne prend même pas la valeur de toutlekit. Quelqu'un peut m'expliquer cette histoire, il n'y a aucune autre déclaration de toutlekit et j'utilise une application windows form sur visual c++ 2008 ?!?!?!?!?

  2. #2
    Membre expérimenté
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Points : 1 452
    Points
    1 452
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Toutlekit *toutlekit;
     
    int main()
    {
    toutlekit->init();
    Toutlekit *tout=toutlekit;
    }
    Comment veux-tu appeler la fonction init sur un objet qui n'est pas alloué??

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Il est alloué, j'ai juste oublié de le marquer dans le code. Ça a l'air d'être windows form qui fait ça, j'ai changé ça pour une classe statique ça a l'air à fonctionner.

    [EDIT]En fait non, ça ne fonctionne pas, ça fait la même chose sur ma classe statique.
    [EDIT]Finalement on dirait que c'est le débogueur qui me mentait. Le problème a l'air d'être ailleurs

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [vb.net]modifier un objet dans un arrayList
    Par Golzinne dans le forum Windows Forms
    Réponses: 4
    Dernier message: 17/10/2006, 13h23
  2. Réponses: 3
    Dernier message: 07/07/2006, 18h00
  3. Réponses: 6
    Dernier message: 21/05/2006, 20h37
  4. Gérer un objet externe depuis un état
    Par yoyo30 dans le forum Access
    Réponses: 5
    Dernier message: 08/09/2005, 10h04
  5. Modifier un objet dhtml
    Par roger_owc dans le forum ASP
    Réponses: 1
    Dernier message: 26/08/2005, 12h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo