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

MFC Discussion :

Includes croises et forward reference


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de kitsune
    Inscrit en
    Décembre 2004
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2004
    Messages : 341
    Par défaut Includes croises et forward reference
    Bonjour,

    J'ai un probleme d'includes croises et j'ai vu le post sur la forward reference.
    (http://www.developpez.net/forums/showthread.php?t=8191)
    Malgre tout j'ai l'impression que cela ne resoud pas mon probeme ou alors j'ai rien compris mais voila la structure de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    class B;
     
    class A {
     
      public :
           B var_b;
    };
     
    class B {
     
      public :
           A var_a;
    };
    Il me dit quand meme que j'essaye d'utiliser une classe non initialisee pour ma variable var_b dans la classe A.
    Le probleme reste le meme...
    Comment faire ?

    Merci !

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    class B;
     
    class A {
      
      public :
           B *pvar_b;
    };
     
    class B {
     
      public :
           A var_a;
    };
    class A ne peut contenir qu'un pointeur sur classe B .

  3. #3
    Membre éclairé Avatar de kitsune
    Inscrit en
    Décembre 2004
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2004
    Messages : 341
    Par défaut
    Ok merci ca compile.

    Par contre c'est vraiment trop la bazar dans mon code la maintenant que j'ai reunit mes 2 classes, j'ai des erreurs indechiffrables.
    Y a-t-il un autre moyen pour palier au probleme des includes croises ?

    Merci.

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    sans voir les problèmes difficiles de répondre...
    tu as spécifié des gardes anti-inclusion ou mis un pragma once dans ton .h ?

  5. #5
    Membre éclairé Avatar de kitsune
    Inscrit en
    Décembre 2004
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2004
    Messages : 341
    Par défaut
    Oui c'est mis.

    En fait j'ai un classe qui correspond a ma boite de dialogue et l'autre a ma fenetre OpenGL.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    class OpenGLControl;
     
    class MFCDialog {
     
      OpenGLControl *m_oglWindow;
    };
     
    class OpenGLControl {
     
      MFCDialog m_mfcDialog;
    };
    Ca compile mais a l'execution il me balance des messages d'erreurs barbares du genre "Unhandled exception at 0x7c90eddc in oglMFCDialog.exe: 0xC0000005: Access violation writing location 0x00030f74."

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    hé bien c'est que tu fais quelque chose d'illicite dans ton code...
    tu remontes la pile des appels du debugger jusqu'à ton code pour voir la cause.

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 13/03/2009, 17h36
  2. Structures croisées avec #include
    Par thierryG dans le forum Débuter
    Réponses: 3
    Dernier message: 30/04/2008, 14h03
  3. Contournement des includes croises ?
    Par kitsune dans le forum MFC
    Réponses: 3
    Dernier message: 17/09/2007, 07h22
  4. Reference Forward - Ca marche pas ;(
    Par Eldered dans le forum C++
    Réponses: 7
    Dernier message: 08/06/2006, 09h31
  5. [Servlets]Include/Forward
    Par Quartus dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 04/05/2006, 13h02

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