// File Coda.cpp #include "Coda.h" template Coda::Coda() { front = NULL; back = NULL; } template Coda& Coda::operator=(const Coda& c) { if (this == &c) return *this; item* pt = front; front = Copia(c.front); Distruggi(pt); } template Coda::Coda(const Coda& c) { front = Copia(c.front); } template void Coda::InCoda(Tipo elem) { item* pt = new item; pt->val = elem; pt->next = NULL; if (front == NULL) { front = pt; back = pt; } else { back->next = pt; back = pt; } } template void Coda::OutCoda() { item* pt = front; front = front->next; delete pt; } template void Coda::Distruggi(item* pt) { if (pt != NULL) { Distruggi(pt->next); delete pt; } } template item* Coda::Copia(item* p) { if (p != NULL) { item* q = new item; q->val = p->val; q->next = Copia(p->next); return q; } else return NULL; }