ciao a tutti, sto ancora implementando la classe cella per le liste, sono arrivato a creare il metodo per leggere un elemento della cella. in pratica la libreria viene creata, però nel main per provare il corretto funzionamento della classe mi dà errore alla linea 40 della classe cellap. inserisco il codice e l'errore:
cellap.h
maincodice:#ifndef _CELLAP_H #define _CELLAP_H template<class T> class Cellap { public: typedef T tipoelem; Cellap(); //costruttore //riga 10 Cellap(tipoelem); //costruttore tipoelem leggicella(); //metodo che fornisce l'elemento della cella private: Cellap *precedente; //puntatore a cella precedente tipoelem elemento; //elemento della cella Cellap *successivo; //puntatore a cella successiva }; #endif //riga 20 template<class T> Cellap<T>::Cellap() { precedente = 0; new(tipoelem); successivo = 0; } template<class T> //riga 30 Cellap<T>::Cellap(tipoelem el) { precedente = 0; new(tipoelem); elemento = el; successivo = 0; } template<class T> Cellap<T>::tipoelem Cellap<T>::leggicella() //riga 40 { return (this->elemento); }
come errore mi viene visualizzato il seguente messaggio:codice:#include "Cellap.h" #include <iostream> using namespace std; int main() { system("pause"); Cellap<int> cella; system("pause"); return 0; }
40 C:\Dev-Cpp\ASD\Cellap.h expected constructor, destructor, or type conversion before "Cellap"
40 C:\Dev-Cpp\ASD\Cellap.h expected `;' before "Cellap"
dove sbaglio???

Rispondi quotando