Il codice di errore è questo:
[Error] no match for 'operator<<' (operand types are 'std::ostream {aka std::basic_ostream<char>}' and 'tipo_giocatore')
cosa devo fare per risolvere? Grazie in anticipo
#include <iostream>
#include <iomanip>
using namespace std;
#define MAX 100
struct tipo_giocatore
{
string nome;
string cognome;
int anno_nascita;
string ruolo;
float altezza;
float peso;
string societa;
};
int leggi_dim ();
void carica_dati (tipo_giocatore [],int );
void visualizza_dati (tipo_giocatore [],int );
void ricerca_atleta (tipo_giocatore [],int & ,bool & ,string,int);
int main ()
{
int dim,pos;
string atleta_ricercato;
bool trovato;
dim=leggi_dim ();
tipo_giocatore atleti[dim];
// RIEMPIMENTO RECORD ATLETI //
carica_dati (atleti,dim);
// VISUALIZZAZIONE //
visualizza_dati (atleti,dim);
// RICERCA PER COGNOME //
cout<<"Inserire cognome atleta da ricercare: "<<endl;
cin>>atleta_ricercato;
ricerca_atleta (atleti,pos,trovato,atleta_ricercato,dim);
if (trovato==true)
cout<<atleti[pos];
else
cout<<"Atleta ricercato non presente nel record. "<<endl;
fflush (stdin);
getchar ();
return 0;
}
int leggi_dim ()
{
int dim;
do{
cout<<"inserire dimensione massima compresa tra 2 e 100: "<<endl;
cin>>dim;
}while (dim<2 || dim>100);
}
void carica_dati (tipo_giocatore atleti[],int dim)
{
for (int i=0;i<=dim-1;i++)
{
cout<<"Inserire nome atleta: "<<endl;
cin>>atleti.nome;
cout<<"Inserire cognome: "<<endl;
cin>>atleti.cognome;
cout<<"Inserire anno di nascita: "<<endl;
cin>>atleti.anno_nascita;
cout<<"Inserire ruolo: "<<endl;
cin>>atleti.ruolo;
cout<<"Inserire altezza: "<<endl;
cin>>atleti.altezza;
cout<<"Inserire peso: "<<endl;
cin>>atleti.peso;
cout<<"Inserire societa' di appartenenza: "<<endl;
cin>>atleti.societa;
}
}
void ricerca_atleta (tipo_giocatore atleti[],int & pos,bool & trovato,string atleta_ricercato,int dim)
{
trovato=false;
pos=0;
while (trovato==false || pos>dim)
{
if (atleti[pos].cognome==atleta_ricercato)
{
trovato=true;
}
else
pos++;
};
}