模板类中的静态方法

时间:2011-12-26 09:11:40

标签: c++ templates

我的课程如下

template<class T>
class Student
{
 public:
  static Student& Instance();
}

template<class T>
Student<T>& Student<T>::Instance()
{
 ...
 return student;
}

它返回LNK2001错误。我可以用这种方式吗?

2 个答案:

答案 0 :(得分:1)

你的代码含糊不清,所以我试着猜测你的问题。如果你在Student.h中声明了Student类并在Student.cpp中实现了Instance()方法,那就是你的问题。在Student.h中实现方法Instance()。

答案 1 :(得分:1)

要么Student<T>::Instance应该在头文件中,要么你应该在.cpp文件中提供Student<>方法的特化。