Hola, tengo ciertos problemas programando en listas en c++. Soy muy principiante en esto como se puede observar, aun no he aprendido a programar lo suficiente. Tengo que elaborar una practica para la universidad. Y sencillamente no me funciona el código, me da un error de operando que a veces sale y otras veces no, cosa que no entiendo.
Y los códigos no me funcionan correctamente como deberían, no entiendo exactamente que me piden. Por ejemplo en eliminar película, me elimina todas. Y no se exactamente como hacer que me elimine la que me llega por el titulo, no se como aplicar ese string al código.
Es una lista enlazada con cabecera y centinela para implementar la lista calificada ordenada de películas
Estos son los códigos que he realizado hasta ahora:
bool Filmoteca::insertarPelicula (Pelicula peli) {
bool resul = false;
string x;
pNodo anterior = cab, actual = cab->sig, nuevo;
cent->info = x;
while(actual->info< x){ //A partir de aquí me da error de operando en todas las x
anterior = actual;
actual=actual->sig;
}
if(actual->info>x || actual == cent){
nuevo = new NodoF(x, actual);
anterior->sig = nuevo;
resul = true;
}
else resul = false;
return resul;
}
bool Filmoteca::eliminarPelicula (string titulo) {
bool resul = false;
string x;
pNodo anterior = cab, actual = cab->sig;
cent->info = x;
while(actual->info < x){
anterior = actual;
actual=actual->sig;
}
if(actual->info >x || actual == cent)
resul = false;
else{
anterior->sig=actual->sig;
delete actual;
resul = false;
}
return resul;
}
Pelicula Filmoteca::buscarPelicula (string t) {
bool resul = false;
string titulo = t;
string x;
pNodo actual = cab->sig;
cent-> info = x;
while(actual->info<x)
actual = actual->sig;
if(actual->info == x && actual != cent)
resul = true;
return resul;
}
void Filmoteca::mostrarFilmoteca () {
pNodo aux = cab->sig;
while (aux != cent){
cout << aux-> info << " ";
aux = aux->sig;
}
Primera parte de filmoteca.cpp
https://ibb.co/cRSGGx
Filmoteca.h
https://ibb.co/c4uSpH
Lo que me piden:
https://ibb.co/k9YL9H