Bonjour,

alors avant tou voici mon code:


main.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
#include <iostream>
#include "Sudoku.h"
#include <boost/multi_array.hpp>
 
int main()
{	
	typedef boost::multi_array<int,2> grille;
	grille grille2(boost::extents[9][9]);
	int i;
	grille2[9][9]={
		{9,0,0,1,0,0,0,0,5},
		{0,0,5,0,9,0,2,0,1},
		{8,0,0,0,4,0,0,0,0},
		{0,0,0,0,8,0,0,0,0},
		{0,0,0,7,0,0,0,0,0},
		{0,0,0,0,2,6,0,0,9},
		{2,0,0,3,0,0,0,0,6},
		{0,0,0,2,0,0,9,0,0},
		{0,0,1,9,0,4,5,7,0}
	};
	Sudoku sud(grille2[9][9]);
}
Sudoku.cpp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
#include <iostream>
#include "Sudoku.h"
 
Sudoku::Sudoku(int grille[][])
{
	int size_1, size_2, i, j;
	/*for(i=0; i<9; ++i)
		for(j=0; i<9; ++j)
			m_grille[i][j]=grille[i][j];*/
}
 
void Sudoku::afficher()
{
	int size_1, size_2, i, j;
	for(i=0; i<9; ++i)
	{
		std::cout << std::endl;
		for(j=0; j<9; ++j)
			std::cout << m_grille[i][j] << " ";
	}
 
}
Sudoku.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
#include <iostream>
#include <vector>
 
class Sudoku
{
	public:
		Sudoku(int grille[][]);
		void afficher();
	private:
		int** m_grille;
};
et le retour du compilateur

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
[ 50%] Building CXX object CMakeFiles/../bin/Sudoku.dir/home/scriptor/Programmation/Sudoku/src/main.cpp.o
In file included from /home/scriptor/Programmation/Sudoku/src/main.cpp:2:0:
/home/scriptor/Programmation/Sudoku/src/Sudoku.h:7:23: erreur: declaration of ‘grille’ as multidimensional array must have bounds for all dimensions except the first
/home/scriptor/Programmation/Sudoku/src/main.cpp: In function ‘int main()’:
/home/scriptor/Programmation/Sudoku/src/main.cpp:20:2: attention : extended initializer lists only available with -std=c++11 or -std=gnu++11 [enabled by default]
/home/scriptor/Programmation/Sudoku/src/main.cpp:20:2: erreur: cannot convert ‘<brace-enclosed initializer list>’ to ‘int’ in assignment
make[2]: *** [CMakeFiles/../bin/Sudoku.dir/home/scriptor/Programmation/Sudoku/src/main.cpp.o] Erreur 1
make[1]: *** [CMakeFiles/../bin/Sudoku.dir/all] Erreur 2
make: *** [all] Erreur 2
Avant d'en arriver la j'effectue plusieurs tests, et d'après mes recherches il semblerait que les tableaux a deux dimensions et plus soient gérés différemment en c++. En effet j'ai l'improssion que le problème se pose au niveau de la grille2, et son passage e argument, mais je n'arrive pas à régler mon problème. Voilà pourquoi j'en appelle à vous.

Merci de toutes réponses