Salut,
Je developpe un petit programme sous DevC++ avec le compilateur mingw. Tout allait bien quand je suis tombé sur un probleme, le mot clef virtual ne semble pas fonctionner dans mon programme.
Lorsque j'appelle ma fonction sur un pointeur de type Talent qui est en fait une Langue je m'attend a utiliser la fonction de Langue, mais ce n'est pas le cas. J'espere que ce n'est pas une erreur 18 cm (trop pres de l'ecran trop longtemps = on fait n'importe quoi)
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
25
26
27
28
29
30
31
32
33 class Talent { public: Talent(std::string oTalent, PRIORITE ePriorite, CARACT eCaract = AUCUNE); virtual ~Talent(){}; virtual bool IsAugmentable(int nRang) { Debug("IsAugmentable dans Talent"); if(!mpoSpecialite) return true; else return ((mfNiveau+0.5f*nRang) <= mpoSpecialite->GetNiveau()); }; }; class Langue : public Talent { public: Langue(std::string oTalent); virtual ~Langue(){}; virtual bool IsAugmentable(int nRang) { Debug("IsAugmentable dans Langue"); return (mfNiveau+0.5f*nRang) <= 0.5f; }; };
Partager