dziwny błąd "unresolved external symbol"

0

Witam, zaimplementowałem sobie prostą klase, skladającą się z 2 plikó (cpp i h):

Function.h

#include <vector>
using namespace std;

template <typename T>
class Function
{
private:
	struct Range{T start; T end;};
	Range search_range;
	vector<T> coefficients;
	vector<Range> zero_ranges;
	vector<T>* zeros; 
public:
	// konstruktory
	Function();
	Function(const Function & copy);
	Function(Range search_range_arg,vector<T> coefficients_arg);
	// destruktor
	~Function();
	// funkcje
	void localize_zeros();
	void solve_zeros_Bisection();
	void solve_zeros_Tagents();
};

 

Function.cpp

 
#include "Function.h"
#include <iostream>
using namespace std;

template <typename T>
Function<T>::Function()
{
	cout<<"WITAJ"<<endl;
}

template <typename T>
Function<T>::Function(const Function & copy)
{
	cout<<"WITAJ COPY"<<endl;
}

template <typename T>
Function<T>::~Function()
{
	cout<<"ZEGNAJ"<<endl;
}

Przy próbe sobie stworzenia obiektu sposobem:

Funkcja moja_funkcja;
 

otrzymuje blad "unresolved external symbol" do konstruktora domyslnego i destruktora, tak jakbym nie mial konstruktora i destruktowa zdefiniowanego. Cos przeoczylem? Z gory dzieki za pomoc

0

Definicje metod klasy szablonowej umieść w pliku nagłówkowym.

0

ok, działa, a czemu trzeba tak? :P ale dzieki ze pomogles

1 użytkowników online, w tym zalogowanych: 0, gości: 1