Hola!
Estoy implementando una cola con templates en c++ y cuando
trato de instanciar un objeto me tira:
[Linker error] undefined reference to `Queue<int>::Queue()'
> [Linker error] undefined reference to `Queue<int>::~Queue()'
Este es el .h
template <typename E>
class Queue {
public:
Queue();
virtual ~Queue();
void push(E* element);
E* pop();
bool isEmpty();
private:
std::vector<E*> elements;
};
Este el cpp:
template <class E> inline
Queue<E>::~Queue() {
E* element;
while (!isEmpty()) {
element = pop();
delete element;
}
}
template <class E> inline
bool Queue<E>::isEmpty() {
return !this->elements.size();
}
template <class E> inline
void Queue<E>::push(E* element) {
elements.push_back(element);
}
template <class E> inline
E* Queue<E>::pop() {
E* element = 0;
if (!isEmpty()) {
element = elements[0];
elements.erase(elements.begin());
}
return element;
}
Si alguien tiene alguna sugerencia, bienvenida.
Gracias, Mauro.
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion