ciao a tutti, sto imparando a creare le strutture dati con il C++ e sto creando la classe cella per le liste con puntatori. in pratica la libreria relativa alla classe cella viene creata ma quando creo il main per testare se la classe è stata creata con successo mi dà errore. posto la classe cella e il main e l'errore che mi viene visualizzato:
classe cella
codice:
#ifndef _CELLAP_H
#define _CELLAP_H
template<class T>
class Cellap
{
public:
typedef T tipoelem;
Cellap();
~Cellap();
void scrivicella(tipoelem);
tipoelem leggicella();
void setprec(Cellap *);
Cellap *getprec();
void setsucc(Cellap *);
Cellap *getsucc();
bool operator==(Cellap);
private:
Cellap *precedente;
tipoelem elemento;
Cellap *successivo;
};
template<class T> Cellap<T>::Cellap()
{}
template<class T> Cellap<T>::~Cellap()
{}
template<class T>void Cellap<T>::scrivicella(tipoelem element)
{
elemento = element;
}
template<class T> tipoelem Cellap<T>::leggicella()
{
return elemento;
}
void template>class T> Cellap<T>::setprec(Cellap *prec)
{
precedente = prec;
}
Cellap *template<class T> Cellap<T>::getprec()
{
return(precedente);
}
void template<class T> Cellap<T>::setsucc(Cellap *succ)
{
successivo = succ;
}
Cellap *template<class T> Cellap<T>::getsucc()
{
return(successivo);
}
bool template<class T> Cellap<T>::operator==(Cellap cella)
{
return(this.elemento == cella.elemento);
}
#endif
main
codice:
#include "Cellap.h"
#include <iostream>
using namespace std;
int main()
{
Cellap<int> cilla;
tipoelem el;
cout << "inserire l'elemento: ";
cin >> el;
cilla.scrivicella(el);
cout << "\nl'elemento inserito è : " << cilla.leggicella();
system("pause");
return 0;
}
quando mado in compilazione il main, mi da l'errore alla linea 40:
expected constructor, destructor, or type conversion before "Cellap"
dove ho sbagliato???