salve a tutti, ragazzi come da titolo non ho capito bene come cavolo si usino questi template, vi faccio un esempio di codice che mi restituisce sempre errori:
ovviamente seguono tutte le implementazioni delle funzioni ecc...ecc...codice://definizione di una cella #ifndef listap_h #define listap_h //la cella rappresenta una componente della lista template <class E> struct cella { E info; cella* succ; }; template <class Elem> class Listap { public: cella* posizione; //costruttore Listap(); //distruttore ~Listap(); //operazioni void creaLista(); bool Listavuota(); Elem leggiLista(posizione); void scriviLista(Elem, posizione); posizione primoLista(); bool fineLista(posizione); posizione succLista(posizione); posizione predLista(posizione); void insLista(Elem, posizione ); void cancLista(posizione ); private: posizione lista; //la lista è un puntatore ad una posizione che a sua volta punta ad una cella };
fatto sta che quando vado a compilare il codice mi ritrovo diversi errori, ve ne elenco qualcuno:
2 testLista.cpp In file included from testLista.cpp
15 listap.h ISO C++ forbids declaration of `cella' with no type
....
....
...
24 listap.h `posizione' has not been declared
....
...
...
praticamente a quanto ho capito mi da un errore ogni volta che uso posizione poichè il primo errore è proprio nella riga:
cella* posizione;
Mi dite come cavolo avrei dovuto definire un puntatore ad una cella???
dove sbaglio????
GRAZIE mille e ciao![]()

Rispondi quotando