Bonjour à tous, j'ai un problème d'implémentation du singleton.

ConfigParser.hpp :

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
 
#ifndef ConfigParser_h
#define ConfigParser_h
#include <map>
#include "tinyxml/tinyxml.h"
class ConfigParser
{//singleton
 
    private:
    static ConfigParser* myInstance;
    ConfigParser();
 
    public :
    static ConfigParser* getInstance();
    ~ConfigParser();
    float getParam(char*); //return the param with the specified name, param are always of float type
 
    private:
    void addParam(const char*, float);//key, value
    std::map<const char*,float> myConfigVars;
};/#endif
ConfigParser.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
#include "ConfigParser.hpp"
ConfigParser* ConfigParser::getInstance()
{
    if(!ConfigParser::myInstance)
    {
        ConfigParser::myInstance=new ConfigParser();
    }
    return ConfigParser::myInstance;
}
 
etc...
L'erreur est "undefined reference to ConfigParser::myInstance.

De plus je n'initialise pas le pointeur et je ne sais pas où le faire.

Merci d'avance !