Bonjour,

Je suis en plein apprentissage sur la programmation c++ et aujourd'hui j'ai un soucis que je vous soumet:
En effet, j'ai cr�e une classe Commercial qui h�rite de la classe Employ�.
Et 2 autres classes Vendeur et Repr�sentant qui h�ritent de la classe Commercial et j'ai la m�thode double calculer_salaire() const
Cette m�thode doit me retourner:

Pour le vendeur: (0.2*chiffre d'affaire) + 400
Pour le repr�sentant: (0.2*chiffre d'affaire) + 800

Ma question est de savoir comment faire pour ne pas avoir ces valeurs de 400 et 800 en dur(qui correspondent � la majoration). J'ai pens� pour cela a d�finir une variable statique dans les classes vendeur et repr�sentant:

Vendeur.hpp:

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
 
#ifndef VENDEUR_HPP
#define VENDEUR_HPP
 
#include "Commercial.hpp"
#include <iostream>
#include <string>
using namespace std;
 
class Vendeur : public Commercial {
public:
	Vendeur(string nom, string prenom, double age, unsigned int date, double CA)
		: Commercial(nom, prenom, age, date, CA) {}
	string get_nom() const;
	double calculer_salaire();
	~Vendeur() {}
private:
	static double majoration;
};
 
#endif
 
 
double Vendeur::majoration(400);
 
double Vendeur::calculer_salaire() {
	return (.2 * chiffre_affaire) + majoration;
}
est-ce la bonne fa�on sachant que je fais la m�me chose pour la classe Repr�sentant ou alors faut il plutot la d�finir dans la classe Commercial?