Bonjour à tous,Je vous écris car je bloque sur un problème et impossible de trouver la solution...
J'ai trois fichiers, voiture.cpp, voiture.hhp et occas.txt qui stocke des données.
Je dois créer une classe "maVoiture" qui hérite de la classe "Voiture" et qui ajoute les traitements : de modification du numéro (methode setNumero), du modèle (methode setModele) et du prix (methode setPrix).
Ensuite, une méthode "afficher" pour afficher les informations.
Et la possibilité de créer une voiture sans paramètres !
Mais je ne sais comment faire. C'est un exercice de programmation, je débute et ne comprends pas grand chose... J'aimerais y arriver !
HELP !![]()
Fichier voiture.cpp :
Fichier voiture.hhp :
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 #include "voiture.hpp" using namespace std; Voiture::Voiture(string n,string m,double p) { numero = n; modele = m; prix = p; } string Voiture::getNumero() { return numero; } string Voiture::getModele() { return modele; } double Voiture::getPrix() { return prix; } bool Voiture::charger(ifstream &fin) { char ligne[256]; fin.getline(ligne,256); string str(ligne); int indexdeb=0,indexfin = str.find( ';',indexdeb); if(indexfin != string::npos ) { numero = str.substr(indexdeb,indexfin-indexdeb); } else { return false; } indexdeb=indexfin+1; indexfin = str.find( ';',indexdeb); if(indexfin != string::npos ) { modele = str.substr(indexdeb,indexfin-indexdeb); } else { return false; } str = str.substr(indexfin+1); prix = atof(str.c_str()); return true; } void Voiture::sauver(ofstream &fout) { fout << numero << ";" << modele << ";" << prix << endl; } // comparaison de deux voitures selon leur prix bool Voiture::operator > (const Voiture& v) const { return prix > v.prix; }
Fichier occas.txt:
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 #ifndef _voiture_hpp #define _voiture_hpp #include <cstdlib> #include <iostream> #include <fstream> #include <string> using namespace std; class Voiture { public : Voiture(string,string,double); string getNumero(); string getModele(); double getPrix(); bool charger(ifstream &); void sauver(ofstream &); bool operator > (const Voiture& v) const; protected : string numero,modele; double prix; }; #endif
Merci d'avance pour votre aide !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 123 DEZ 91;Renault Clio;6700 456 ABC 92;Peugeot 206;9000 7890 XF 25;Peugeot 306;8900 434 RTE 75;Renault Twingo;5700 8765 ZH 45;Peugeot 205;3500 2464 XV 39;Peugeot 309;4200
Partager