Erreur : invalid types «int[int]» for array subscript
	
	
		Bonjour,
Je débute en C++ et j'essaye de faire un petit projet pour appréhender toutes les facettes de ce langage. J'ai quelques notions en C mais toujours des problèmes avec ces satanés pointeurs, adresses etc...
Lorsque je lis un cours, je comprends pas trop mal mais il faut à chaque fois que je réfléchisse (trop longtemps...) lorsque je vois un *, ** ou & :cry:
Et donc je ne m'en sors pas, j'ai beau rabâcher tout ça, ça ne rentre pas...
Ca doit être l'âge...:roll:
En tout cas, je tente tout de même de développer un jeu de morpion.
Voici mes 3 fichiers :
Définition de ma classe Echiquier : l'objet possède un tableau à 2 dimensions de 3 x 3 (aie :calim2: les problèmes vont venir de là...), une méthode init() et une methode print() :
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 
 |  
// morpion.h
 
#ifndef MORPION_H
#define MORPION_H
 
class Echiquier {
  public:
  int plateau[3][3] ;
  void init() ;
  void print() ;
} ;
 
#endif | 
 Définition des fonctions : la méthode init() sur un objet de classe Echiquier rempli le tableau à 2 dimensions de 0; la méthode print() pour l'instant ne fait rien :roll:
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 
 |  
// morpion.cpp
 
#include "morpion.h"
 
void Echiquier::init() {
  for ( int i=0; i<3; i++ ) {
    for ( int j=0; j<3; j++ ) {
      plateau[i][j] = 0 ;
    }
  }
}
 
void Echiquier::print() {
} | 
 Le programme en lui-même qui créé un objet ech de la classe Echiquier et qui l'initialise :
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 
 |  
// morpionTest.cpp
 
#include <iostream>
#include "morpion.h"
 
using namespace std;
 
int main() {
  Echiquier ech ;
  ech.init();
} | 
 A la compilation, 
	Code:
	
gcc morpion.cpp morpionTest.cpp
  j'ai l'erreur suivante : 
	Code:
	
| 12
 
 | morpion.cpp: In member function «void Echiquier::init()»:
morpion.cpp:8: erreur: invalid types «int[int]» for array subscript | 
 Je me doute qu'il s'agit d'un problème du au tableau à deux dimensions et à l'utilisation de pointeurs pour remplir celui-ci. J'ai essayé ceci sans trop comprendre ce que je faisais mais l'erreur est la même :
	Code:
	
| 12
 3
 4
 
 |  
*plateau[i][j] = 0       
ou
**plateau[i][j] = 0 ; | 
 Ca fait 2 jours que je tourne sur plein de tuto mais je n'arrive pas à m'en sortir.
Merci pour une explication !!!