Salve vorrei fare la stampa dei valori della lista...credo che la funzione stampasquadra vada bene però non so come passare il puntatore testa dalla funzione aggiuntaGiocatore a stampasquadra...
codice:#include <iostream> using namespace std; struct giocatore { string nomegiocatore; string cognomegiocatore; int abilita; giocatore*nextgiocatore; }; class squadra { public: squadra() { testa=NULL; } void assegnamentoNome(); void assegnamentoNomeSponsor(); void aggiuntaGiocatore(); void stampasquadra(); int scelta; private: string nomesquadra; string sponsor; giocatore*testa; string valore; char opzione; }; void squadra::assegnamentoNome() { cout<<"Che nome vuoi dare alla tua squadra? "<<endl; cin>>nomesquadra; } void squadra::assegnamentoNomeSponsor() { cout<<"Qual è il tuo sponsor?"<<endl; cin>>sponsor; } void squadra::aggiuntaGiocatore() { do { giocatore*ptr=new giocatore; giocatore*temp=new giocatore; cout<<"Inserisci il nome del giocatore:"<<endl; cin>>ptr->nomegiocatore; cout<<"Inserisci il cognome del giocatore:"<<endl; cin>>ptr->cognomegiocatore; cout<<"Qual e l'abilità del tuo giocatore?"<<endl; cin>>ptr->abilita; ptr->nextgiocatore=NULL; if(testa==NULL) testa=ptr; else { temp=testa; testa=ptr; testa->nextgiocatore=temp; } cout<<"Vuoi inserire un nuovo giocatore?"<<endl; cin>>opzione; }while(opzione=='s'); } void squadra::stampasquadra() { do { cout<<testa->nextgiocatore->nomegiocatore<<endl; valore=testa->nextgiocatore->nomegiocatore; }while(valore==NULL); } int main() { do { squadra miasquadra; cout<<"Cosa desideri fare?"<<endl; cout<<"1)Inserisci il nome della squadra"<<endl; cout<<"2)Inserisci il nome dello sponsor"<<endl; cout<<"3)Inserisci un giocatore"<<endl; cout<<"4)Visualizza la squadra"<<endl; cin>>miasquadra.scelta; switch(miasquadra.scelta) { case 1: miasquadra.assegnamentoNome(); break; case 2: miasquadra.assegnamentoNomeSponsor(); break; case 3: miasquadra.aggiuntaGiocatore(); break; default: cout<<"Scelta sbagliata"; } }while(true); return 0; }

Rispondi quotando