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

Visual C++ Discussion :

Déclaration de pointeur


Sujet :

Visual C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Fred2209
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Par défaut Déclaration de pointeur
    Salut,

    Dans le *.cpp de ma fenetre principale j'ai déclaré un pointeur vers une classe annexe que j'ai créé moi-même :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #include "stdafx.h"
    #include "MyProg.h"
    #include "MyprogDlg.h"
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif
     
     
    CFonctionAnnexe* FA;
     
    /////////////////////////////////////////////////////////////////////////////
    // CAboutDlg dialog used for App About
     
    class CAboutDlg : public CDialog
    {
    public:
    	CAboutDlg();
     
    // Dialog Data
    	//{{AFX_DATA(CAboutDlg)
    	enum { IDD = IDD_ABOUTBOX };
    	//}}AFX_DATA...
    etc....
    OK, jusque là ça a toujours marché, mais maintenant pour récupérer ce pointeur dans un autre *.cpp d'une nouvelle fenetre que j'ai créé, j'ai voulu le déclaré dans MyProgDlg.h :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    ////////////////////////////////////////////////////////////////////////////
    // CMyProgDlg dialog
     
    class CMyProgDlg: public CDialog
    {
    // Construction
    public:
    	CMyProgDlg(CWnd* pParent = NULL);	// standard constructor
     
            CFonctionAnnexe* FA;  
     
    // Dialog Data
    	//{{AFX_DATA(CMyProgDlg)
     
    etc.....
    J'ai bien déclaré le FonctionAnnexe.h...

    Et là 144 erreurs....

    Et je sais que normalement c'est possible alors je ne comprend pas, si c'est déjà arrivé à quelqu'un...

    Merci...

  2. #2
    Membre Expert
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include "stdafx.h"
    #include "MyProg.h"
    #include "MyprogDlg.h"
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif
     
     
    CFonctionAnnexe* FA;
    beurk


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    J'ai bien déclaré le FonctionAnnexe.h...
     
    Et là 144 erreurs....
     
    Et je sais que normalement c'est possible alors je ne comprend pas, si c'est déjà arrivé à quelqu'un...
     
    Merci...
    c'est ce qui arrive quand on déclare des variables globales...

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 100
    Par défaut
    Ajoute ceci à ton fichier FonctionAnnexe.h affin qu'il ne soit déclaré qu'une seul et unique fois même s'il est inclu à d'autres endroits.

    Ca devrait résoudre ton problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #ifndef _FONCTIONANNEXE_H_  // 1ere ligne du fichier FonctionAnnexe.h
    #define _FONCTIONANNEXE_H_ // 2eme ligne du fichier FonctionAnnexe.h
     
    ...
     
    #endif // Derniere ligne du fichier FonctionAnnexe.h

  4. #4
    Membre éclairé Avatar de Fred2209
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Par défaut
    Non en fait ça fait toujours les mêmes erreurs...

    Mais merci quand même pour ton aide...

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 100
    Par défaut
    Quelles sortes d'erreurs as-tu ?

  6. #6
    Membre Expert
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Par défaut
    probablement que FA a une double déclaration

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

Discussions similaires

  1. classe sans déclaration et pointeur de fonction
    Par Asmod_D dans le forum C++
    Réponses: 3
    Dernier message: 27/06/2010, 16h39
  2. Déclaration de pointeur de fonction et structure
    Par ShaiLeTroll dans le forum Delphi
    Réponses: 28
    Dernier message: 05/04/2007, 10h48
  3. Réponses: 8
    Dernier message: 06/03/2006, 14h44
  4. [déclaration de variable]Pointeur
    Par ronan99999 dans le forum C
    Réponses: 6
    Dernier message: 04/10/2005, 15h53
  5. Réponses: 4
    Dernier message: 08/02/2005, 20h47

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