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 variable static


Sujet :

C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 23
    Par défaut Initialiser variable static
    Bonjour,

    voici mon problème : j'ai vu comment initialiser une variable static sur cette page : http://cpp.developpez.com/faq/cpp/?p...SS_init_static

    J'aimerais initialiser une variable static mais qui soit d'un type que j'ai moi même créé et donc je ne sais pas comment faire pour l'initialiser sans l'opérateur '='

    Voici comment j'ai essayé de procéder :

    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
     
    // dans le fichier Exemple.h
    #ifndef EXEMPLE_H
    #define EXEMPLE_H
    #include "monType.h"
     
    class Exemple
    { 
    public: 
        static monType test; 
    }; 
     
    #endif 
     
    // dans le fichier Exemple.cpp
    #include "Exemple.h" 
    #include "monType.h"
     
    monType Exemple::test = new monType();
    mais il me sort l'erreur "
    12 conversion from `monType*' to non-scalar type `monType' requested
    Pouvez-vous m'aider svp ?

    Merci beaucoup

  2. #2
    Membre expérimenté Avatar de Rewpparo
    Homme Profil pro
    Amateur
    Inscrit en
    Décembre 2005
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 170
    Par défaut
    La tu panaches deux choses. Choisis d'abord le type de ta variable : Pointeur ou variable ?

    Si tu choisis un pointeur, il faut que la variable soit de type pointeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monType* Exemple::test = new monType();
    Si tu choisis variable, il faut pas l'initialiser avec new mais avec un constructeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monType Exemple::test = monType();
    Dans les deux cas, si tu ne mets pas le = ca devient une déclaration, pas une définition, et donc tu auras une erreur de linkage car aucune mémoire ne sera allouée pour ta variable.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 23
    Par défaut
    ça marche, merci beaucoup Rewpparo !

  4. #4
    Membre expérimenté Avatar de Rewpparo
    Homme Profil pro
    Amateur
    Inscrit en
    Décembre 2005
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 170
    Par défaut
    Un clic sur stp

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

Discussions similaires

  1. Réfléxion et initialisation de variable static
    Par kimjoa dans le forum Langage
    Réponses: 5
    Dernier message: 10/11/2010, 15h15
  2. Réponses: 4
    Dernier message: 05/08/2010, 11h05
  3. Initialiser une variable static
    Par mamelouk dans le forum Débuter
    Réponses: 15
    Dernier message: 31/07/2008, 17h48
  4. [debutant] initialisation variable static
    Par julien.63 dans le forum Langage
    Réponses: 3
    Dernier message: 12/01/2008, 18h02
  5. [VB6]Initialiser une variable Static dans un évenement
    Par loverdose dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 20/01/2005, 14h57

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