Witam!
Zgodnie z tym czego mnie nauczono próbuję napisać klasę szablonową w dwóch plikach - .h i .cpp
Oczywiście w .h umieszczam deklarację klasy, wewnątrz niej tylko deklaracje metod, a w pliku .cpp umieszczam definicje metod, oto przykład jednej z nich:
template<class T>
Node<T>* lista<T>::begin()
{
return first;
}
Jednak kompilator wywala błąd: undefined reference to lista<int>::begin()
w miejscu gdzie chce wywołać tą metodę. Dodam, że w mainie załączam plik nagłówkowy, plik cpp załączony jest do projektu, używam Code::Blocks i jeśli skopiuję definicję tej metody do pliku nagłówkowego, poza deklarację klasy to wszystko hula. Jestem jedna przyzwyczajony do rozdzielania klas na dwa pliki i chciałbym dowiedzieć się dlaczego to nie działa?