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++

  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

  7. #7
    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
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    error C2143: syntax error : missing ';' before '*'
    error C2501: 'CFonctionAnnexe' : missing storage-class or type specifiers
    error C2501: 'FI' : missing storage-class or type specifiers
    error C2065: 'FI' : undeclared identifier
    error C2440: '=' : cannot convert from 'class CFonctionInterface *' to 'int'
     
    error C2227: left of '->CreateDevice' must point to class/struct/union
    Et il y en a 144...

  8. #8
    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
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    error C2143: syntax error : missing ';' before '*'
    error C2501: 'CFonctionAnnexe' : missing storage-class or type specifiers
    O� as-tu fais ton include de FonctionAnnexe.h ?
    Car il ne reconnait pas ta classe CFonctionAnnexe.

  9. #9
    Membre confirm�
    Inscrit en
    Avril 2002
    Messages
    180
    D�tails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 180
    Par d�faut
    tu veut comme membre de ta classe myProg le pointeur global CFonctionAnnexe* FA ???

    si CFonctionAnnexe* FA est global tu n'a pas de besoin qu'il soit membre de myProg tu peut l'acceder directement avec
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    extern CFonctionAnnexe* FA;
    oubien tu te declare un CFonctionAnnexe* m_FA qui vas pointer sur le pointeur global
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    myProg::myProg()
    {
         extern CFonctionAnnexe* FA;
         m_FA=FA;
    }
    assure toit quand meme que FA soit construit

    bon courage

  10. #10
    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
    Merci pour vos r�ponses...

    J'essayerai d�s que possible et je vous tiendrais au courant...

  11. #11
    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
    Citation Envoy� par philippe V
    tu veut comme membre de ta classe myProg le pointeur global CFonctionAnnexe* FA ???

    si CFonctionAnnexe* FA est global tu n'a pas de besoin qu'il soit membre de myProg tu peut l'acceder directement avec
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    extern CFonctionAnnexe* FA;

    Tu veux dire que je le d�clare comme ceci :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    extern CFonctionAnnexe* FA;
    comme variable global au d�but de MyProgDlg.cpp ?

  12. #12
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    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
    Merci M�dinoc pour ce lien car il est une mine d'or !!!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. 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