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 :

Initialiser un membre (objet) static


Sujet :

C++

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 83
    Par défaut Initialiser un membre (objet) static
    Bonjour,

    Je déclare dans une classe (classe1) un objet de type "paquet" dont je présente le constructeur ci-dessous. Hélas, je n'arrive pas à l'initialiser pour l'utiliser dans ma classe classe1.

    paquet.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
    16
    ...
    class paquet 
    {
    	public:
    		paquet( string C)
    		  {
    			contenu = C;
    		  }
    		 string GetContenu()
    		  {
                            return contenu;
                      }
     
    	private:
    		 string contenu;
    };
    classe1.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include "paquet.h"
    class classe1{	
    	private :
    		...
    		static paquet paquet_temp[10];
     
    	public :
    		...	
    };
    classe1.cpp ( c'est là que ça bug)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include "classe1.h"
    #include "paquet.h"
    ...
    paquet classe1::paquet_temp[10]; //ESt-ce bon ???
    ...
    void methode1(void)
    { ...
    paquet_temp[1] = new paquet( "Paquet1" ); //Je teste avec une simple chaine bateau  pour tester le fonctionnement.
    ...
    Mais bon, cette dernière ligne de code ne fonctionne pas puisque je ne sais pas trop comment m'y prendre pour l'initialisation dans classe1.
    Quelqu'un pourrait-il m'aider pour l'initialisation ! Merci

    NB 1 : J'ai suivi les infos de cette pages mais nada :
    http://c.developpez.com/faq/cpp/?pag..._membre_static

    NB 2 : Le constructeur paquet fonctionne bien, je l'ai déjà testé dans une autre classe.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Là tu construis les éléments de ton tableau par défaut, or ta classe de définit aucun constructeur par défaut, d'où l'erreur.

    Je pense que tu peux t'en tirer comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    paquet classe1::paquet_temp[10] =
    {
        paquet("toto"),
        paquet("titi"),
        ...
    };
    Si les valeurs ne sont connues qu'à l'exécution, alors prévois plutôt de fournir un constucteur par défaut à ta classe paquet.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 83
    Par défaut
    Ok, ce que tu m'a écrit m'a bien aidé, je m'étais trompé lors de ma déclaration de constructeur de paquet.

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

Discussions similaires

  1. Initialisation de membre static
    Par Derfh dans le forum C++
    Réponses: 3
    Dernier message: 02/12/2014, 08h47
  2. Initialisation variable membre static const double
    Par LinuxUser dans le forum C++
    Réponses: 27
    Dernier message: 04/01/2013, 10h05
  3. Initialisation de membres static const
    Par NiamorH dans le forum C++
    Réponses: 16
    Dernier message: 14/01/2008, 16h50
  4. initialiser les membres d'une structure
    Par molesqualeux dans le forum C
    Réponses: 8
    Dernier message: 02/02/2006, 19h57
  5. Initialisation d'un menbre static de type CMap
    Par vanitom dans le forum MFC
    Réponses: 3
    Dernier message: 11/10/2005, 13h53

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