Come faccio ad usare il metodo della composizione su due classi contemporanemente??? VVoVe:

Ovvero...ho la classe CAMPO che è formata da giocatori e la classe GIOCATORI che devono conoscere la classe Campo per potersi orientare (posizione palla,pos avversario ect ect)

il compilatore non riesce a digerirla questa cosa...xchè?

Campo.h
codice:
#ifndef CAMPO_H
#define CAMPO_H


#include "Giocatore.h"

using namespace std;


class Campo {
             public:
                    Campo(int,int,Giocatore&,Giocatore&);
                                                                               
             private:
                     Giocatore *s1[5];
                     Giocatore *s2[5];                     

            };         

#endif

Giocatore.h
codice:
#ifndef GIOCATORE_H
#define GIOCATORE_H

#include "Campo.h"


using namespace std;

class Giocatore:{
                 public:
                        Giocatore(string,double=0.0,double=0.0);               
                        virtual void gioca(Campo&,int)=0;

                 protected:

                };
                
#endif
che devo fare?