Ciao a tutti, ho un probolema con le list in stl. Ho due liste e devo cancella re tutti gli ementi della prima lista che non sono contenuti nella seconda. Ho realizzato il seguente codice ma ho un problema che quando trovo l'elemento uguale tra le list e cancello l'elemento dalla prima list poi l'iteratore giustamente viene puntato sull'elemento successivo a quello cancellato ma essendo dentro un while l'istruzione ++iterator mi fa andare avanti l'iteratore e quindi non confrondandomi l'elemento. Un po' complicato :-)

Grazie a tutti

codice:
			while( it_listA != listA.end() )
			{
				listB = vFileDest.begin();

				while( listB != vFileDest.end() ) 
				{

					if( _tcscmp( listB->cName, it_listA->cName ) == 0  )
					{
						listA.erase ( it_listA );
						break;
					}

					++listB;
				}

				++it_listA; //Questo mi rimanda avanti l'iteratore quindi quando cancello mi fa saltare
			}