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 :

[Debutant] Problème avec des membres static


Sujet :

C++

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut [Debutant] Problème avec des membres static
    Bonjour,

    je n'arrive pas à me servir de mes membres static dans mes fonctions
    voici le code

    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
    26
    27
    28
    29
     
    #ifndef C_GUI_MANAGER_H
    #define C_GUI_MANAGER_H
     
    #include <vector>
    using namespace std;
     
    #include "CGuiObjet.h"
     
    #include <SDL/SDL.h>
    #include <SDL/SDL_thread.h>
     
     
    class CGuiManager
    {
    	public:
    	/// Constructeur
     
    	CGuiManager();
     
    	static int GuiMain(void *unused);
    	void quit();
    	static vector <CGuiObjet * > elements;
     
    	static bool continuer;
    	SDL_Thread *thread;
    };
     
    #endif
    et

    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
     
    #include "CGuiManager.h"
     
     
    CGuiManager::CGuiManager()
    {
    	//continuer=true;
    	thread = SDL_CreateThread(GuiMain, NULL);
    }
     
    int CGuiManager::GuiMain(void *unused)
    {
    	//TODO : Créer un thread
     
    	while(continuer)
    	{
    		for(int i=0; i<elements.size();i++)
    		{
     
    		}
    	}
    }
    et j'obtient les erreur suivantes
    madmath@math:~/projets/gui$ make
    g++-3.3 *.cpp -o gui -L/usr/X11R6/lib/ -lSDL
    /tmp/cc6gstjv.o(.text+0x55): In function `CGuiManager::GuiMain(void*)':
    : undefined reference to `CGuiManager::continuer'
    /tmp/cc6gstjv.o(.text+0x68): In function `CGuiManager::GuiMain(void*)':
    : undefined reference to `CGuiManager::elements'
    collect2: ld a retourné 1 code d'état d'exécution
    make: *** [all] Erreur 1
    je ne comprend pas d'où vient le problème
    j'utilise mes membres static dans une fonction static

    merci de vos réponses

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 63
    Points : 77
    Points
    77
    Par défaut
    Il faut définier les variables static dans le cpp, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    vector <CGuiObjet * >CGuiManager::elements();
    bool CGuiManager::continuer = false;

  3. #3
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Bonjour,
    Avec une petite recherche dans la FAQ C++, tu trouves la solution:
    http://c.developpez.com/faq/cpp/?pag...SS_init_static

    C'est bien expliqué

  4. #4
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    j'avais bien vu la FAQ
    mais mal interpreté la chose
    je croyais que c'était pour donner une valeur au membre

    escusez moi de vous avoir déranger

    n tout cas
    merci beaucoup
    @+

  5. #5
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Aider ne nous dérange pas, sinon nous ne serions pas sur le forum
    Citation Envoyé par mad-math
    j'avais bien vu la FAQ
    mais mal interpreté la chose
    je croyais que c'était pour donner une valeur au membre

    escusez moi de vous avoir déranger

    n tout cas
    merci beaucoup
    @+

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/03/2009, 17h00
  2. Réponses: 6
    Dernier message: 12/09/2007, 17h31
  3. Réponses: 5
    Dernier message: 19/08/2004, 11h11
  4. [STRUTS] Problème avec des ActionForm
    Par zarbydigital dans le forum Struts 1
    Réponses: 2
    Dernier message: 29/03/2004, 13h49
  5. Problèmes avec des vues
    Par dady dans le forum MFC
    Réponses: 22
    Dernier message: 09/01/2004, 16h26

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