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 partagée entre fichiers


Sujet :

C++

  1. #1
    Membre actif Avatar de Twindruff
    Inscrit en
    Janvier 2005
    Messages
    216
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 216
    Points : 237
    Points
    237
    Par défaut Variable globale partagée entre fichiers
    Bonjour,
    j'ai un problème de variable globale dans un programme C++.
    J'aimerais trouver un moyen de définir une variable globale var dans un fichier header A.h qui serait utilisée dans le fichier d'implémentation A.cpp. La variable var doit aussi être accessible depuis un fichier B.cpp qui inclue A.h.

    Je suis dans un cas particulier où je ne peux pas par exemple définir la variable var dans B.cpp et la passer en arguments à une fonction de A.

    Mon code ressemble à cela:
    Code A.h : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #ifndef A_H
    #define A_H
     
    type var;
     
    #endif
    Code A.cpp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #include "A.h"
     
    void f()
    {
        var=x;
    }
    Code B.cpp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #include "A.h"
     
    void g()
    {
        var=y;     
    }

    Mais cela ne fonctionne pas, j'ai des erreurs à la liaison
    XXX déjà défini(e) dans YYY.obj
    J'ai essayé d'utiliser les mot-clefs extern et static sans succès.

  2. #2
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Quel était ton problème avec extern? car c'est la solution.

    Hypothèse: il te manquait une définition (.cpp qui contient type var;)
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  3. #3
    Membre actif Avatar de Twindruff
    Inscrit en
    Janvier 2005
    Messages
    216
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 216
    Points : 237
    Points
    237
    Par défaut
    Merci pour ta réponse , sachant que c'était bien avec extern j'ai pû trouver la solution.

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

Discussions similaires

  1. Variables globales dans un fichier appelé?
    Par soeursourire dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 04/10/2012, 10h08
  2. Réponses: 1
    Dernier message: 04/04/2008, 16h47
  3. Réponses: 40
    Dernier message: 03/03/2007, 23h27
  4. portée des variables globales dans un fichier js
    Par crakazoid dans le forum Général JavaScript
    Réponses: 19
    Dernier message: 14/04/2006, 16h49
  5. Réponses: 6
    Dernier message: 19/01/2006, 22h52

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