OK ho fatto così ma questo

codice:
#include <iostream>
#include <list>
#include <string>

using namespace std;

class player{
public:

	list<string> p;
    string nome_ ;
    string ruolo_;

	void add(string* n){
		p.push_back(n);
	}

	int find(string* n){
		int i = p.begin();
		while(i<p.end()){
			++i;
			nome& nm = *i;
			if(nm==n){
				cout<<n<<" presente nella lista\n";
				return 1;
			}
		}
		return 0;
	}
};


	int main(){
		player pl;
		pl.add("Topo Gigio");
		int thereis = pl.find("Topo Gigio");
		if(thereis==1){
			cout<< "Occorrenza trovata";
		}
		else{
			cout<< "Occorrenza non trovata";
		}
		return 0;
	}
mi dà questi 10 errori


D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(1 5) : error C2664: 'push_back' : cannot convert parameter 1 from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > *' to 'const class std::basic
_string<char,struct std::char_traits<char>,class std::allocator<char> > &'
Reason: cannot convert from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > *' to 'const class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
No constructor could take the source type, or constructor overload resolution was ambiguous

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(1 9) : error C2440: 'initializing' : cannot convert from 'class std::list<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<c
lass std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > >::iterator' to 'int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const class std::basic_string<_E,_Tr,_A> &,const _E *)' : could not deduce template argument for 'const class std::basic_string<_E,_Tr
,_A> &' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const _E *,const class std::basic_string<_E,_Tr,_A> &)' : could not deduce template argument for 'const *' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const class std::basic_string<_E,_Tr,_A> &,const class std::basic_string<_E,_Tr,_A> &)' : could not deduce template argument for 'cons
t class std::basic_string<_E,_Tr,_A> &' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const class std::list<_Ty,_A> &,const class std::list<_Ty,_A> &)' : could not deduce template argument for 'const class std::list<_Ty,
_A> &' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &,const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &)' : could not deduce t
emplate argument for 'const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2784: 'bool __cdecl std:perator <(const struct std:air<_T1,_T2> &,const struct std:air<_T1,_T2> &)' : could not deduce template argument for 'const struct std:air
<_T1,_T2> &' from 'int'

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : error C2677: binary '<' : no global operator defined which takes type 'class std::list<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,cl
ass std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > >::iterator' (or there is no acceptable conversion)

D:\Documents and Settings\home\Documenti\Roby\MyApp\giocatori.cpp(2 0) : fatal error C1903: unable to recover from previous error(s); stopping compilation