Con la siguiente clase tengo este problema pese a que "ve" la clase la función main. No ve ninguna función ni constructores ni destructores ni nada.
[Linker error] undefined reference to `vectornuevo<int>::vectornuevo(int, int)'
[Linker error] undefined reference to `vectornuevo<int>::~vectornuevo()'
[Linker error] undefined reference to `vectornuevo<int>::~vectornuevo()'
El destructor da error 2 veces y el método push no da error.
using namespace std;
template <class T>
class vectornuevo {
protected:
int size;
int capacity;
T* data;
public:
vectornuevo(int min,int max);
vectornuevo();
~vectornuevo();
void push();
};
template <class T>
// class constructor
vectornuevo<T>::vectornuevo(int min,int max){
capacity = max-min;
size=0;
data = new T[capacity];
}
template <class T>
// class destructor
vectornuevo<T>::vectornuevo()
{
capacity = 10;
size=0;
data = new T[capacity];
}
template <class T>
// class destructor
vectornuevo<T>::~vectornuevo()
{
// insert your code here
}
template <class T>
void vectornuevo<T>::push (){
// cout<<"Estoy en el push\n";
/*if (data.size<capacity) {
data[size+1]=x;
}else{
//resize(size);
}*/
}