Tengo el mismo error en dos funciones, me sale "no match for operator ==" con cualquier signo en si también con >. He leído que es porque tengo que dar un valor al string, pero la verdad que no se que valor dar exactamente.
El ejercicio 1 dice así: Devuelve el objeto de tipo Pelicula cuyo título coincide con el string recibido. En caso de que no se encuentre el título en el catálogo, se devolverá una película vacía, sin datos.
Este es el primer código:
Pelicula buscar(pNodo nodo, string t){
Pelicula p;
if(nodo != NULL){
if(nodo->clave == t)
return p;
else {
if(nodo->clave > t)
buscar(nodo->iz, t);
else buscar(nodo->de, t);
}
}
return p;
}
Pelicula Filmoteca::buscarPelicula (string t) {
Pelicula p;
buscar(raiz, t);
return p;
}
Y el segundo código:
En este caso me da el mismo error pero en "nodo->info << endl"
void mostrar(pNodo &nodo){
if(nodo != NULL){
mostrar(nodo->iz);
cout << " " << nodo->info << endl;
mostrar(nodo->de);
}
}
void Filmoteca::mostrarFilmoteca () {
mostrar(raiz);
}
El ejercicio 1 dice así: Devuelve el objeto de tipo Pelicula cuyo título coincide con el string recibido. En caso de que no se encuentre el título en el catálogo, se devolverá una película vacía, sin datos.
Este es el primer código:
Pelicula buscar(pNodo nodo, string t){
Pelicula p;
if(nodo != NULL){
if(nodo->clave == t)
return p;
else {
if(nodo->clave > t)
buscar(nodo->iz, t);
else buscar(nodo->de, t);
}
}
return p;
}
Pelicula Filmoteca::buscarPelicula (string t) {
Pelicula p;
buscar(raiz, t);
return p;
}
Y el segundo código:
En este caso me da el mismo error pero en "nodo->info << endl"
void mostrar(pNodo &nodo){
if(nodo != NULL){
mostrar(nodo->iz);
cout << " " << nodo->info << endl;
mostrar(nodo->de);
}
}
void Filmoteca::mostrarFilmoteca () {
mostrar(raiz);
}