GoldenCrystal (./1235) :
header.h:class Class { static int i; }
code.c:static int Class::i = 0;
Non ?
Il ne faut pas mettre le "static" dans le .cpp
Folco (./1240) :
class Message
{
public:
static Message *getMessenger();
static Message *m_Message;
virtual ~Message();
private:
Message(); // Designed to be a singleton
Message(const Message&);
Message operator=(const Message&);
};
m_Message ne doit surtout pas être public, sinon l'utilisateur pourrait y accéder sans passer par getMessenger().
Quand aux différent types de constructeurs et la surcharge de '=', je n'en vois pas trop l'utilité dans un singleton.
En tout cas, je ne trouve pas où est ton problème de compilation.
edit: As-tu bien mis "Message *Message::m_Message = NULL;" au début de ton Message.cpp?
edit2: Le destructeur doit être privé, tu veux pas que quelqu'un puisse faire "delete Message::getMessenger();"