У меня есть класс, как показано ниже
template<class T> class Student { public: static Student& Instance(); } template<class T> Student<T>& Student<T>::Instance() { ... return student; }
Возвращает ошибку LNK2001.Могу ли я использовать этот способ?
Либо Student<T>::Instance должно быть в заголовочном файле, либо вы должны указать специализацию Student<> методов в файлах .cpp.
Student<T>::Instance
Student<>
Ваш код неоднозначен, поэтому я пытаюсь угадать вашу проблему. Если вы объявили класс Student в Student.h и внедрили метод Instance () в Student.cpp, это ваша проблема. Реализуйте метод Instance () в Student.h.