il costruttore deve essere pubblico, a differenza delle strutture stile C le classi di default mettono i membri privati, potrebbe essere quello.

edit:
per fare semplici programmi ad oggetti io mi trovo bene ad iniziare il lavoro dal main:

codice:
...
int main() {
Giocatore g1,g2;
Arbitro a;
Mazzo m;

m.mescola();
a.give(g1);
a.give(g2);
g1.play();
g2.play();
a.winner(g1, g2);

return 0;
}
...
da qui creo le classi e metodi, dentro i quali rifaccio quello che ho fatto nel main, quindi aggiungo metodi, funzioni friend overloading di operatori e quando ho fatto l'ossatura del programma implemento metodo per metodo. Per ora mi trovo bene.