Bonjour tout le monde,
J'ai un exercice à faire qui dit ceci :
Ce qui concerne mon message est ce passage :[Version 1]
L'application devra gérer par classe UN tableau dynamique PAR TYPE de véhicules :
- un véhicule peut être une voiture, un camion ou un bus
- un véhicule est défini par :
- une immatriculation
- un nombre de places (places assises pour des personnes)
- une voiture est caractérisée en plus par :
- un volume transportable de marchandises
- un camion est caractérisé en plus par :
- un volume transportable de marchandises
- un poids transportable de marchandises
- un bus est caractérisé en plus par :
- un nombre de rangs de sièges passager
Le programme devra permettre à l'utilisateur :
- dans un premier temps, d'encoder des véhicules dans l'un et l'autre
tableaux (en fonction du type)
- ensuite, de trier les 3 tableaux par ordre croissant d'immatriculation
- et enfin, d'afficher sous forme d'un seul tableau visuel les véhicules
en maintenant l'ordre croissant d'immatriculation (technique de la
fusion de tableaux triés, sauf que l'on ne crée pas le tableau final
en mémoire mais uniquement à l'affichage)
Cela veut dire que je peux donc créer une classe générique pour tous les véhicules car chaque véhicule a au moins ces deux caractéristiques.- un véhicule est défini par :
- une immatriculation
- un nombre de places (places assises pour des personnes)
Je pense avoir commencé l'exercice un peu trop rapidement sans avoir analysé le problème.
Dans la classe, il y'aura deux donnée membres qui seront :
m_Immatriculation qui sera un CChaine (s'est une fonction qui crée des chaines) et m_NombreDePlaces qui sera un short (je ne pense pas qu'un bus puisse aller jusqu'à 255 places).
Ces deux membres seront privés, il faut donc que je crée un accesseur et un modificateur pour ces deux membres.
Question (confirmation surtout) :
Les modificateurs vont me permettre de modifier les valeurs de mes membres ?
J'ai créé une classe, j'ai pas mal d'erreur lors de la compilation :
J'ai aussi fait une classe voiture, cette classe hérite de Vehicule3, elle a donc accès à tout ce qui est publique dans Vehicule3.
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 class Vehicule3 { public: Vehicule3(); ~Vehicule3(); // Vehicule3(const Vehicule3& Source); Vehicule3(const char* UneImmatriculation, short UnShort); short NombreDePlace(UnShort); bool Immatriculation(const char* UneImmatriculation); //modificateur du nom bool EstValide() const; private: CChaine m_Immatriculation; short m_NombreDePlaces; };
Donc par rapport à l'énoncé, une voiture a en plus un volume transportable de marchandise (VTM) j'ai donc ajouté cela dans la classe CVoiture, je l'ai mis en private, il faut donc que je crée un modificateur pour pouvoir lui affecter une valeur (??) ?
Est-ce que jusque là s'est correcte ?
Maintenant je me demande comment je dois créer le constructeur en sachant que les données viennent de deux classes différentes.
J'ai beaucoup de mal à comprendre les constructeurs même après avoir lu pas mal de livres et d'articles.
Je vous remercie d'avance pour votre aide.
beegeesati
Partager