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 :

variable globale en C++


Sujet :

C++

  1. #1
    Membre confirm�
    Inscrit en
    Juillet 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 113
    Par d�faut variable globale en C++
    slt j'a un variable "vector<TypeConnection> C;" defini dans un classfichier GestionPlys.hpp)
    "class GestionPolys{
    public :
    GestionPolys(void);
    ~GestionPolys(void);
    .
    .
    (des method des structures....)
    .
    .
    vector<TypeConnection> C;"
    private:...
    "
    +Je veut utiliser ce varible dans un autre fichier ".cpp".J'ai fait le "#include "GestionPolys.hpp".mais � la compilation il ne reconai pas le variable 'C' "undeclared....".

    +je me demande ce que je doit ajoute pour que �a soit globale..

  2. #2
    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
    Par d�faut
    D�j�, je ne pense pas qu'une variable dans une classe soit directement accessible en C. Il faudra s�rement une vraie variable globale.

    Ensuite, comment veux-tu que du C puisse utiliser un vector ?
    La variable doit �tre d'un type compatible avec le C!
    (pointeur vers une structure/pseudo-structure, entier, etc.)
    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.

  3. #3
    Membre confirm� Avatar de harsh
    Inscrit en
    F�vrier 2005
    Messages
    229
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2005
    Messages : 229
    Par d�faut
    Oui, il y a confusion quelque part. Si tu fais du c++ comme ton titre l'indique (ainsi que l'utilisation de classe et de template), tes fichiers son alors des .cpp et non des .c

    Ensuite une variable globale n'a pas de raison d'etre d�finit au sein d'une classe, mais a l'exterieur de tout bloc.

  4. #4
    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
    Par d�faut
    Les fichiers C++ peuvent �tre en .cpp, .cxx, .cc ou encore, sur des OS sensibles � la casse, .C (par opposition aux fichiers C qui sur ces m�mes OS, ne peuvent �tre qu'en .c)

    Quant aux variables de classe statiques, elles sont pr�f�rables aux autres variables globales car l'acc�s en est r�glement�...
    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.

  5. #5
    Membre confirm�
    Inscrit en
    Juillet 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 113
    Par d�faut oops
    J'ai voulu dire ".cpp"

    en effet; c'est la premier fois que je program en C++

  6. #6
    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
    Par d�faut
    Comment d�finis-tu tes fonctions membres de la classe ?
    (je parle de celles d�finies hors du .hpp)
    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.

  7. #7
    Membre confirm�
    Inscrit en
    Juillet 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 113
    Par d�faut definition des fonctions
    -J'ai pas bien compris votre question -
    -En effet,ce n'estpas moi qui a programe(je fait seulement des test et modification)-

    +Par exemple dans le fichier (GestionPolys.cpp) :
    "void GestionPolys::CheckPDBFile(wxString filename){
    ...
    Checkconnection();
    ...
    }
    "
    +dans (Polycgi.cpp) j'ai:
    "
    int main () {
    ...
    C.push_back(*TT);
    ...
    "
    +en effet, c'est dans ce dernier fichier ou il fait l'erreur (il ne trouve pas c koi le vecteur "C".

  8. #8
    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
    Par d�faut
    C est une variable membre d'une classe.

    Pourquoi on la voit sortir de nulle part dans le main ?

    PS:
    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.

  9. #9
    Membre �prouv�
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    159
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 159
    Par d�faut
    Dans le main, il faut utiliser l'instance de la classe pour acceder au membre.
    Exemple:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    GestionPolys tmpA;
    ....
     
    tmpA.C.push_back(*TT);
     
    ....

  10. #10
    Membre chevronn�
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par d�faut
    la variable 'C' (au passage un autre nom ne serait pas inutile, parce que bonjour les confusions) ne peut pas �tre globale si elle est d�clar�e � l'int�rieur d'une classe !

  11. #11
    Membre confirm�
    Inscrit en
    Juillet 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 113
    Par d�faut any way
    il me paret comme si "Luther13" a raison.mais en tout cas je n'est pas teste car j'ai changer le test(desole ).

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

Discussions similaires

  1. Variable globale / Propri�t� des threads
    Par rgarnier dans le forum XMLRAD
    R�ponses: 4
    Dernier message: 03/10/2003, 10h49
  2. Cacher Variable Url avec Variable Globale
    Par danuz dans le forum XMLRAD
    R�ponses: 6
    Dernier message: 26/09/2003, 17h20
  3. Variable "globale" (dans plusieurs templa
    Par mattmat dans le forum XSL/XSLT/XPATH
    R�ponses: 3
    Dernier message: 17/06/2003, 19h22
  4. question sur les variables globales et les thread posix
    Par souris_sonic dans le forum POSIX
    R�ponses: 5
    Dernier message: 13/06/2003, 13h59
  5. les variables globales static
    Par gRRosminet dans le forum C
    R�ponses: 8
    Dernier message: 27/04/2002, 08h34

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