Constante statique a la classe
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:
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?