Bonjour à tous.
Bien qu'experimenté en C et en POO, je suis novice en C++ et j'ai un projet d'IHM à effectuer en C++, sous QtCreator.
Je suis actuellement entrain de mettre en place la partie fonctionnelle du projet, mais je rencontre une erreur que je n'arrive pas à fixer depuis un moment.
Il s'agit d'un problème d'héritage de constructeurs vraisemblablement.
banquier.h :
Code cpp : 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
#ifndef BANQUIER_H
#define BANQUIER_H
#include "vente.h"
#include <vector>
 
class Banquier
{
private:
    unsigned int id;
    char * nom;
public:
    Banquier();
    Banquier(unsigned int id, char*nom);
    unsigned int getId();
    char * getNom();
    void setId(unsigned int id);
    void setNom(char * nom);
};
 
class Employe : public Banquier
{
public:
    std::vector<vente>  ventes;
    Employe(unsigned int id, char*nom);
    std::vector<vente> * getVentes();
};
 
class Directeur : public Banquier
{
public:
    Directeur();
    Directeur(unsigned int id, char*nom);
};
 
class DirecteurGeneral : public Banquier
{
public:
    DirecteurGeneral(unsigned int id, char*nom);
};
 
#endif // BANQUIER_H

banquier.cpp:
Code cpp : 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
#include <string.h>
#include "banquier.h"
#include "vente.h"
 
// Banquier
Banquier::Banquier(unsigned int id, char*nom)
{
    this->id=id;
    strcpy(this->nom,nom);
}
 
unsigned int Banquier::getId(){
    return this->id;
}
 
char * Banquier::getNom(){
    return this->nom;
}
void Banquier::setId(unsigned int id){
    this->id=id;
}
void Banquier::setNom(char * nom){
    this->nom=nom;
}
//Employé
Employe::Employe(unsigned int id, char * nom)
{
    this->setId(id);
    this->setNom(nom);
}
 
std::vector<vente> * Employe::getVentes(){
    return &this->ventes;
}
 
// Directeur
Directeur::Directeur(unsigned int id, char*nom)
{
    this->setId(id);
    this->setNom(nom);
}
 
 
// Directeur général
DirecteurGeneral::DirecteurGeneral(unsigned int id, char*nom)
{
    this->setId(id);
    this->setNom(nom);
}

À la compilation, j'obtiens une erreur au niveau du constructeur de Employe, Directeur et DirecteurGenera, dans le fichier .cpp, me disant : "Undefined reference to Banquier::Banquier()".

Je vous remercie par avance pour votre aide !