Bonsoir a tous, j'ai un problème avec mon mini-programme que je n'arrive pas a résoudre. Le code est tout simple, mais je n'arrive pas a utiliser les méthodes d'une classe dans mon main. Voici le code allégé :

Le 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
 
#include <iostream>
#include "etatcase.h"
 
 
using std::endl;
using std::cout;
using std::cin;
 
int main()
{
int dcaseune;
 
Etatcase Caseune(false,2);
cout << "Caseune a comme direction :" ;
dcaseune=Caseune.get_d(); 
cout << Caseune.get_d();
 
  return 0;
}
etatcase.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
15
16
17
18
19
20
21
22
23
24
 
#ifndef ETATCASE_H_INCLUDED
#define ETATCASE_H_INCLUDED
 
class Etatcase
{
 
public :
 
Etatcase();
Etatcase(bool o, int d);
bool get_o();
int get_d();
void set_o(bool o);
void set_d(int d);
void modif_d();
 
private :
    bool occupe;
    int direction; // 1 ouest 2 nord 3 est 4 sud
 
};
 
#endif // ETATCASE_H_INCLUDED
et enfin etatcase.cpp (avec uniquement les fonctions concernés) :
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 "etatcase.h"
using namespace std;
 
Etatcase::Etatcase()
{
    occupe = false;
    direction = 1;
}
 
Etatcase::Etatcase(bool o, int d)
{
  //  if (d<1 or d>4) d=1;
    direction = d;
    occupe = o;
}
 
 
int Etatcase::get_d() const
{
    return d;
 
}

Quand j'essaye de construire mon projet, code blocks me donne deux erreurs dans le main :
-Undefined reference to 'Etatcase::Etatcase(bool, int)'
-Undefined reference to 'Etatcase::get_d()'

pourtant, les include me semblent bon.


J'attends vos réponses, merci d'avance et bonne année !