Sto facendo un programma che risolve i sudoku... per farlo mi sono scritto un po' di classi:
class casella : sudoku
{
public:
casella();
bool possible(int);
int SetValue(int);
int GetValue();
void SetFalse(int);
private:
bool num[10];
int val;
};
class riga : sudoku
{
public:
void controllo1();
void controllo2();
void update();
int rig;
};
class colonna : sudoku
{
public:
void controllo1();
void controllo2();
void update();
int col;
};
class quadrato : sudoku
{
public:
void controllo1();
void controllo2();
void update();
int quad;
};
class sudoku
{
public:
sudoku();
void SolveSudoku();
casella cas[81];
private:
void controllo1();
void controllo2();
void update();
riga rig[9];
colonna col[9];
quadrato quad[9];
};
Io cercho di avere accesso ad alcuni metodi di casella dalle funzioni controllo1 e update di riga colonna e quadrato. Compilando mi dice:
sudoku.h:17: error: expected class-name before ‘{’ token
sudoku.h:30: error: expected class-name before ‘{’ token
sudoku.h:39: error: expected class-name before ‘{’ token
sudoku.h:48: error: expected class-name before ‘{’ token
sudoku.h: In member function ‘void riga::update()’:
sudoku.h:129: error: ‘cas’ was not declared in this scope
sudoku.h: In member function ‘void colonna::update()’:
sudoku.h:144: error: ‘cas’ was not declared in this scope
sudoku.h: In member function ‘void quadrato::update()’:
sudoku.h:159: error: ‘cas’ was not declared in this scope
sudoku.h: In member function ‘void riga::controllo1()’:
sudoku.h:174: error: ‘cas’ was not declared in this scope
sudoku.h: In member function ‘void colonna::controllo1()’:
sudoku.h:195: error: ‘cas’ was not declared in this scope
sudoku.h: In member function ‘void quadrato::controllo1()’:
sudoku.h:216: error: ‘cas’ was not declared in this scope
non capisco perchè da quadrato\riga\colonna non posso accedere a cas..... se qualcuno mi può aiutare lo ringrazio.....