Question sur héritage C++

melaure

Chasseur de bobos
Club iGen
24 Octobre 2001
25 786
2 124
55
Le Grand Lyon
Bonjour, j'ai un petit soucis en ce qui concerne les héritages en c++ que j'apprend au CNAM.

J'ai quatre classes : Employe, Patron qui hérite de Employe, EmployeCom qui hérite de Employe et Directeur qui herite de Employecom et de Patron.

Pour l'instant il n'y a pas de main, je ne veux que compiler les classes.

A la compilation, la classe Directeur ne trouve pas une fonction d'Employe avec les bons paramètres, alors que celles de Patron et EmployeCom sont OK ...

Bref je n'y comprend rien et si quelqu'un veut m'aider je peux lui envoyer le projet (Project Builder) par mail.
 
<blockquote><font class="small">Post&eacute; &agrave; l'origine par melaure:</font><hr />
J'ai quatre classes : Employe, Patron qui hérite de Employe, EmployeCom qui hérite de Employe et Directeur qui herite de Employecom et de Patron.

...

A la compilation, la classe Directeur ne trouve pas une fonction d'Employe avec les bons paramètres, alors que celles de Patron et EmployeCom sont OK ...



[/QUOTE]

Deux solutions (ou corrections
wink.gif
) possibles:

1) Déclarer Patron et Employecom comme suit:

class Patron : virtual public Employe

class Employecom : virtual public Employe

2) moins bonne solution

si ta fonction s'appel maFonc(), au niveau de la classe Diercteur, appeler maFonc() sous formes suivantes:

Directeur di;

di.Patron::maFonc()
ou
di.Employecom ::maFonc()

Excuses-moi de ne pas te donner davantage d'explications. Je trouve que la question est trop technique et pas assez spécifique Mac pour le forum macG.



 
Merci quand même. J'ai employé la première solution depuis le début, mais ca coince quelque part ...