#include <list>
class CBaseObject
{
private:
static std::list<CBaseObject *> liveObjects;
long nRefCount;
protected:
CBaseObject();
virtual ~CBaseObject();
};
CBaseObject::CBaseObject()
{
liveObjects.push_back(this);
nRefCount = 0;
};
CBaseObject::~CBaseObject()
{
};
Почему не компилируется этот код? Выдаёт такую ошибку
MemoryManager error LNK2001: unresolved external symbol "private: static class _STL::list<class CBaseObject *,class _STL::allocator<class CBaseObject *> > CBaseObject::liveObjects" (?liveObjects@CBaseObject@@0V?$list@PAVCBaseObject@@V?$allocator@PAVCBaseObject@@@_STL@@@_STL@@A)
Пользуюсь STLPort, и VC 7.0