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 :

problem class Singleton


Sujet :

C++

  1. #1
    Membre régulier
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Points : 90
    Points
    90
    Par défaut problem class Singleton
    Bonjour,

    Je cherche a créer une classe singleton.
    J'ai suivi le tuto mais je rencontre une erreur:

    Voici le .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
    17
    18
    19
     
    class Ressources_Manager {
    public:
    	static Ressources_Manager& Instance();
     
    private:
    	Ressources_Manager& operator= (const Ressources_Manager&){}
    	Ressources_Manager (const Ressources_Manager&){}
     
    	static Ressources_Manager&  m_instance;
    	Ressources_Manager();
    	virtual ~Ressources_Manager();
     
    	sf::Texture H_Sp_Prairie;
    	sf::Image   Img_H_Prairie;
     
    	void Load_Textures();
    	void Load_Images();
    };
    et le .cpp
    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
     
    Ressources_Manager Ressources_Manager::m_instance=Ressources_Manager();
     
    		Ressources_Manager::Ressources_Manager() {
     
    			Load_Images();
    			Load_Textures();
    		}
     
    		Ressources_Manager::~Ressources_Manager() {
     
    		}
     
    		Ressources_Manager& Ressources_Manager::Instance()
    		{
    		    return m_instance;
    		}
     
    		void Ressources_Manager::Load_Images()
    		{
    			Img_H_Prairie.loadFromFile("Image/HexaTestSize.bmp");
    			Img_H_Prairie.createMaskFromColor(sf::Color(255,255,255));
    		}
     
    		void Ressources_Manager::Load_Textures()
    		{
    			H_Sp_Prairie.loadFromImage(Img_H_Prairie);
    		}
    et l'erreur affichée est:

    In file included from ..\RessourcesManager.cpp:8:0:
    ..\RessourcesManager.h: In member function 'itpro::res::Ressources_Manager& itpro::res::Ressources_Manager::operator=(const itpro::res::Ressources_Manager&)':
    ..\RessourcesManager.h:23:60: warning: no return statement in function returning non-void [-Wreturn-type]
    ..\RessourcesManager.cpp: At global scope:
    ..\RessourcesManager.cpp:13:41: error: conflicting declaration 'itpro::res::Ressources_Manager itpro::res::Ressources_Manager::m_instance'
    In file included from ..\RessourcesManager.cpp:8:0:
    ..\RessourcesManager.h:26:30: error: 'itpro::res::Ressources_Manager::m_instance' has a previous declaration as 'itpro::res::Ressources_Manager& itpro::res::Ressources_Manager::m_instance'
    ..\RessourcesManager.cpp:13:41: error: declaration of 'itpro::res::Ressources_Manager& itpro::res::Ressources_Manager::m_instance' outside of class is not definition [-fpermissive]
    ..\RessourcesManager.cpp:13:71: error: invalid initialization of non-const reference of type 'itpro::res::Ressources_Manager&' from an rvalue of type 'itpro::res::Ressources_Manager'


    Une idée?

    Merci

  2. #2
    Membre régulier
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Points : 90
    Points
    90
    Par défaut
    Mea culpa,

    Dans mon.h :
    static Ressources_Manager& m_instance;

    au lieu de:
    static Ressources_Manager m_instance;

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

Discussions similaires

  1. probleme classe et chaines de caractères
    Par oilv dans le forum C++
    Réponses: 12
    Dernier message: 18/02/2006, 10h01
  2. Réponses: 14
    Dernier message: 02/02/2006, 18h32
  3. Implemetation de la classe Singleton
    Par lepoutho dans le forum C++
    Réponses: 6
    Dernier message: 20/08/2005, 11h46
  4. [introspection][singleton] introspetion de classe à singleton
    Par Jaxofun dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 18/08/2005, 09h59
  5. fonctionnement de la classe Singleton
    Par lepoutho dans le forum C++
    Réponses: 11
    Dernier message: 04/08/2005, 09h28

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