Devo implementare un metodo di una linkedlist, costituita da oggetti di tipo film che faccia una ricerca per attori, preciso che gli attori sono memorizzati negli oggetti di tipo Film in un vector di tipo string.
La procedura che riporto funziona per la ricerca per titolo e regista, non per attori, in quest' ultimo caso fallisce, e non capisco perchč:
Purtroppo scrivo molto complicato, vi prego di perdonarmi.....riporto solo la parte in cui cerco per attori, perchč ci si capisce poco se copio tutto.....semmai copiate su un editor di testo per vedere i commenti e il tutto in modo pił integro...qui non si capisce gran che.

codice:
 case 2:       //ricerca per attori
                   {
                     string toReturn="";
           
                     
                     vector<Film*> vett;  
                     if(size>0){
                           
                       for(Node* tmp=header->getNext(); tmp!=trailer; tmp=tmp->getNext())
                       {
                          
                         int parola1=0;    //conterņ il numeero di attori di input confrontati
                         int parola2=0;    //con quelli presenti nei vari film
                         
                            stringstream start(word);
                            string control;

                            while ((getline(start, control, ',')))//nomi sepratai da ,
                            {
                               
                                vector<string> actors=tmp->getElement()->getAttori(); //il vector con gli attori
                                 vector<string> ::iterator it;
                            
                                
                                  for (it=actors.begin(); it!=actors.end(); it++)
                                  {
                                    string name=*it;
                                         if(name==control)  //posso andare alla fine del vector di attori
                                         {                 //e ricomincio dal begin per il prossimo attore da cercare
                                           it=actors.end();
                                           parola2++;              //altro attore trovato, incremento.
                                         }
                                   }
                                
                              parola1++; //ricomincia il ciclo e confronterņ un altro attore
                            }
                      
                            if (parola1=parola2)  //il nodo col film va bene quindi inserisco nel vector da ordinare
                                vett.push_back(tmp->getElement());
                              
                       }
                       
                       
                       if(vett.size()>0)   //allora ci sono film da ordinare
                       {
                               vector<Film*> ::iterator it;
                               sort(vett.begin(), vett.end(),  CompareFilmPtrs);
   
                               for (it=vett.begin(); it!=vett.end(); it++)
                               {
                                          Film* f=*it;          
                                          toReturn+=f->toString()+'\n';
                               }          //ordino i film e concateno la stringa finale da restituire con le info
                               
                         return toReturn;
                       }
                           
                     }
                     
                     
                     //O size č uguale a 0 oppure non ho trovato film con quegli attori che cercavo....
                    return toReturn="Non e' presente nel catalogo il film da lei richiesto.";
                      
                     break;     //inutile
                   }