Sorry, the code can be compiled by itself.
But when other class use this class, it will generates compile error.
It works just fine with VS 2008. The error only happens with VS 2010.
The error only happens with following code.
getMap()->insert(std::make_pair(s, &createT<t>));
</t>
It can be compiled. I include everything it needs.
Thanks