1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| class A
{
private :
int * ordi; // les 6 cases du camp de l'ordinateur
int * hum; // les 6 cases du camp de l'humain
int * ordi_hum; // les 6 cases du camp de l'ordinateur suivies des 6 cases du camp de l'humain
public :
int nbpionordinateur(void);
int nbpionhumain(void);
+ d'autres fonctions
}
ordi_hum est un tableau à 12 éléments, et
ordi=&ordi_hum[0];
hum=&ordi_hum[6];
class B
{
A a;
il y a d'autres champs
public :
int toto(void);
+ d'autres fonctions
}
A la fin de mon fichier B.h j'ai ceci :
typedef int (*nbpionsjoueur)(void);
voici mon problème : dans mon fichier b.cpp :
Etat Partie::Jouer(Joueur jou,int n)
{
Joueur joueur1, joueur2;
int * camp1, * camp2;
nbpionsjoueur nbpionsjoueur1, nbpionsjoueur2;
int numcase[6];
int i,sum=0,sem,nbgraines;
if(jou==ORDINATEUR)
{
joueur1=ORDINATEUR;
joueur2=HUMAIN;
camp1=moncale.getcampordi();
camp2=moncale.getcamphum();
nbpionsjoueur1 = a.nbpionordinateur(); // ici ca plante : comment faire un pointeur de fonctions ??
nbpionsjoueur2 = a.nbpionhumain();
}
else
{
joueur1=HUMAIN;
joueur2=ORDINATEUR;
camp1=moncale.getcamphum();
camp2=moncale.getcampordi();
nbpionsjoueur1 = a.nbpionhumain();
nbpionsjoueur2 = a.nbpionordinateur();
}
blabla
} |
Partager