probabilmente è il mio compilatore che fa schifo. ma oltre al #endif dovrei apportare altre modifiche?
probabilmente è il mio compilatore che fa schifo. ma oltre al #endif dovrei apportare altre modifiche?
Si già te l'avevo detto prima...
Inoltre dovevi modificare
codice:
template<class tipoelem>
typename listap<tipoelem>:osizione succlista(typename listap<tipoelem>:
osizione pos)
{
return(pos->getsuc());
}
in
codice:
template<class tipoelem>
typename listap<tipoelem>:osizione listap<tipoelem>::succlista(typename listap<tipoelem>:
osizione pos)
{
return(pos->getsuc());
}
si, ho apportato le modifiche che mi hai detto tu ma non ho risolto niente. :-(
se hai dev hai provato a fare CTRL-F11 e poi a rieseguire?
Che errore ti da il compilatore?
ooooooooooooooohhhhhhhhhhhhhhhhhh finalmente!!!!!! ti ringrazio infinitamente!!!
de nada![]()
ancora un problema, ho implementato un altro metodo che serve ad inserire un nuovo nodo nella lista. in pratica nel test la compilazione ha successo mentre l'esecuzione va in crash. il metodo e il test sono i seguenti:
il test:codice:template<class tipoelem> void listap<tipoelem>::inslista(typename listap<tipoelem>::posizione pos, tipoelem elem) { posizione temp; temp->setprec(pos->getprec()); temp->setsuc(pos); (pos->getprec())->setsuc(temp); pos->setprec(temp); temp->setelem(elem); pos = temp; }
dove sbaglio. scusatemi ma non capisco molto relativamente all'ambiente di svulippo utilizzato.codice:#include "listap.h" #include <iostream> #include <stdlib.h> using namespace std; int main() { listap<int> list; cout << list.listavuota() << "\n\n"; cout << list.primolista() << "\n\n"; listap<int>::posizione posi = list.primolista(); cout << list.finelista(posi) << "\n\n"; cout << list.leggilista(posi) << "\n\n"; int el = 50; list.scrivilista(posi, el); cout << list.leggilista(posi) << "\n\n"; cout << list.succlista(posi) << "\n\n"; cout << list.predlista(posi) << "\n\n"; list.inslista(posi, 10); system("pause"); return 0; }
Così ad occhio penso che il problema sia dovuto al fatto che non allochi spazio per temp, dovresti fare:
ho assunto che stavi lavorando sempre con i file di prima e che il metodo preclista sia uguale a succlista tranne per il fatto che restituisce il nodo precedente...codice:posizione temp = new nodo<tipoelem>;
Prova un po'...