Quelle est la meilleure solution ?
Bonjour a tous, je débute en C++ (pas dans le langage mais dans la facon de penser objet) et j'aimerai savoir quelle est la meilleure solution (et pourquoi) de ce probleme :
Une classe abstraite (vehicule par exemple) contient une variable nom et deux classes filles de vehicule (voiture et moto par exemple) doivent avoir leur bon nom, le probleme est qu'il y a beaucoup de facons de l'implementer mais j'aimerai connaitre la meilleure.
Soit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
class CVehicule
{
public :
CVehicule();
virtual ~CVehicule();
const std::string &getName (void) const { return this->name; };
protected :
void setName (std::string name) { this->name = name; };
private :
std::string name;
};
// Avec les classes filles qui utilisent setName pour mettre leur noms |
ou bien :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
class CVehicule
{
public :
CVehicule();
virtual ~CVehicule();
virtual const std::string &getName (void) const = 0;
};
// Avec les classes filles qui overloadent la fonction getName pour retourner leur noms |
Ou bien si il y a encore une meilleure facon de faire ?!
Merci beaucoup