MyClass.h
----------------------------------------------------
#include <afxtempl.h>class CMyClass
{
public:
UNIT nID;
CMyClass();
virtual ~CMyClass();
static CMap<UINT,UINT,CMyClass*,CMyClass*> MyMap;
};
----------------------------------------------------
MyClass.cpp
----------------------------------------------------
#include "stdafx.h"
#include "MyClass.h"CMyClass::CMyClass()
{
MyMap[nID] = this;
}CMyClass::~CMyClass()
{
}
----------------------------------------------------
编译后总出错误:
Linking...
MyClass.obj : error LNK2001: unresolved external symbol "public: static class CMap<unsigned int,unsigned int,class CMyClass *,class CMyClass *>  CMyClass::MyMap" (?MyMap@CMyClass@@2V?$CMap@IIPAVCMyMap@@PAV1@@@A)
Debug/Test.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.如果将MyMap该成全局变量,则不出现错误,为何?可是我想就想用作类成员变量,如何解决?谢谢!