http://blog.csdn.net/zjq2008wd/article/details/38417859
首先看代码,静态数据成员分为两种情况,第一种不依赖模版类型参数,第二种依赖模版类型参数。
- template <typename T> class TestTemStatic
- {
- public:
- static int knownTypeVar;
- static T unKnownTypeVar;
- };
第一种有两种定义法:
template <> int TestTemStatic<int/* any other type */>::knownTypeVar=2;//具化定义,给出T类型,同时定义num,T可以是其他任意特定类型。
template <typename T> int TestTemStatic<T>::knownTypeVar=50;//范化定义,定义num时不需要知道T的类型
第二种有一种定义法:
template <> float TestTemStatic<float>::unKnownTypeVar=4.0f;