Salutous,

Je code en C++ avec VisualC++ 6.0.

J'ai realiser une classe case, et une classe tableau.
Dans la classe tableau je cree un tableau de case, jusque la pas de probleme:
fichier:
(J'ai simplifier le code a l'utile)

case.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
#ifndef CASE_H
#define CASE_H
 
class Ccase
{
public:
   int val1;
   int val2;
}
 
#endif
et
tableau.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
#ifndef TABLEAU_H
#define TABLEAU_H
 
#include "case.h"
 
class Ctableau
{
public:
   Ccase tab[3];
}
 
#endif
Donc la aucun probleme a la compilation ni a l'execution.
Maintenant je voudrai que la case contiennent un pointeur sur le tableau parent que je lui passerai au constructeur:
Le fichier case devient(pas de modification du fichier tableau.h:
case.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
#ifndef CASE_H
#define CASE_H
 
class Ccase
{
public:
   int val1;
   int val2;
 
   Ctableau* Parent; //<-- cette ligne ne passe pas
}
 
#endif
Donc a priori c'est normal, il faut que j'inclus le fichier tableau.h:
-->
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
#include "tableau.h"
class Ccase
{
...
}
Et la du coup j'ai une erreur de syntaxe dans le fichier tableau.h:
tableau.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
#ifndef TABLEAU_H
#define TABLEAU_H
 
#include "case.h"
 
class Ctableau
{
public:
   Ccase tab[3]; // <-- Syntax error : missing ; before tab
}
 
#endif
Et la j'avoue que je plante, je comprend pas pourquoi ca fait ca.:S

Si qqun voit le truc...

Merci