статический метод в классе шаблона - PullRequest
0 голосов
/ 26 декабря 2011

У меня есть класс, как показано ниже

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

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

Возвращает ошибку LNK2001.Могу ли я использовать этот способ?

Ответы [ 2 ]

1 голос
/ 26 декабря 2011

Либо Student<T>::Instance должно быть в заголовочном файле, либо вы должны указать специализацию Student<> методов в файлах .cpp.

1 голос
/ 26 декабря 2011

Ваш код неоднозначен, поэтому я пытаюсь угадать вашу проблему. Если вы объявили класс Student в Student.h и внедрили метод Instance () в Student.cpp, это ваша проблема. Реализуйте метод Instance () в Student.h.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...