guarda il seguente listato:
codice:
#include <iostream.h>
template <typename Tipo>
struct nodo {
Tipo val;
struct nodo <Tipo> *next;
};
template <typename Tip>
class Lista
{
struct nodo <Tip> *l;
int lunghezza;
public:
Lista()
{
l = NULL;
lunghezza = 0;
}
void push(Tip el)
{
struct nodo <Tip> *z = new(struct nodo <Tip>);
z->val = el;
z->next = l;
l = z;
lunghezza++;
}
void visualizza(void)
{
struct nodo <Tip> *z = l;
while (z != NULL)
{
cout << z->val << " ---> ";
z = z->next;
}
cout << "NULL\n\n";
}
int lung(void)
{
return lunghezza;
}
};
int main()
{
Lista <char [20]> lis;
lis.push("cioa");
lis.push("come");
lis.visualizza();
cout << lis.lung();
}
template<>
Lista<char *>::void push(char *s){
for (int = 0; (l->val[i] = s[i]) != '\0'; i++)
;
lunghezza++;
}
cosa c'è ke non va?