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++/CLI Discussion :

Instance en C++


Sujet :

C++/CLI

  1. #1
    Membre �clair�
    Inscrit en
    Novembre 2008
    Messages
    357
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 357
    Par d�faut Instance en C++
    Bonjour,

    J'ai cr�e une classe dans vs2008, et j'ai instanci� un objet qui est utilis� dans deux fichiers .cpp

    Le probl�me est que lorsque je compile, des erreurs link sont affich�es qui m'ont disent que l'instance est red�finie

    Donc ma question est comment partager une instance entre deux fichiers source

    Merci.

  2. #2
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 505
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 505
    Par d�faut
    On ne partage pas, les variables globales, c'est mal.

    Avant de faire ce genre de cochonnerie, pensez � vous servir des param�tres dans les fonctions et les m�thodes.
    Si les valeurs doivent persister plus d'un appel, pensez aux champs dans les objets et aux param�tres dans leurs constructeurs.

  3. #3
    Membre �clair�
    Inscrit en
    Novembre 2008
    Messages
    357
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 357
    Par d�faut
    Voil� comment d�clarer ma classe:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    classe A
    {
    private:
               x,y,z;
    public:
               A();
              ~A();
              void m1(const std::string x1, const std::string y1);
     },
    A a;
    Et j'ai deux fichiers source, j'ai met dans l'un des fichiers l'impl�mentation de m�thode et dans l'autre l'appel de m�thode

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    a.m1("fichier1.txt","fichier2.txt");
    Finalement j'ai inclut mon fichier .h dans les deux sources,

    et voil� la liste d'erreurs:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    1>error LNK2005: "class A a" (?a@@3VA@@A) already defined in main.obj
    1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall A::A(void)" (??0A@@QAE@XZ) referenced in function "void __cdecl `dynamic initializer for 'a''(void)" (??__EA@@YAXXZ)
    1>error LNK2001: unresolved external symbol "public: __thiscall A::A(void)" (??0A@@QAE@XZ)
    1>fatal error LNK1120: 1 unresolved externals

  4. #4
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 505
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 505
    Par d�faut
    Virez-moi cette putain de variable globale "a", ligne 10.
    Cr�ez l'objet dans une fonction, le "main" si vous voulez, et passez cette variable en param�tre de vos fonctions et m�thodes.

    Vous trouverez sur le net des trucs pour partager des variables globales, mais c'est � �viter comme la peste.

Discussions similaires

  1. R�ponses: 3
    Dernier message: 16/10/2003, 10h22
  2. Communiquer entre plusieurs instances d'applications
    Par bourinator dans le forum C++Builder
    R�ponses: 5
    Dernier message: 28/09/2003, 11h24
  3. [VB6] [DLL] DLL à instance unique
    Par HPJ dans le forum VB 6 et ant�rieur
    R�ponses: 9
    Dernier message: 19/09/2003, 08h07
  4. [VB6]Passer le focus à une instance précedente
    Par Jeremiah dans le forum VB 6 et ant�rieur
    R�ponses: 13
    Dernier message: 16/09/2003, 10h01
  5. [] plusieurs instances de form avec leur contexte ?
    Par Seb-31 dans le forum VB 6 et ant�rieur
    R�ponses: 5
    Dernier message: 11/04/2003, 13h56

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