[débutant] que faire ? class véhicule class Voiture
voilà.
J'ai
- class véhicule
affVehicule(bool Loue);
// affiche tous les véhicules dispos loués ou pas (pas encore faite)
- class voiture
>>void Voiture::ajoutVoiture (char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait)
>> modifVoiture (char Immat)
// on modifie le Loue et la dernière date d'utilisation : UseDate (pas encore fait)
La classe voiture hérite de la class véhicule (il y a aussi une class Camion)
voici la methode Voiture::ajouteVoiture dans le Voiture.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
Voiture::Voiture()
{ // JE MET RIEN ICI ? }
// Fonction d'ajout de voiture
void Voiture::ajoutVoiture (char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait)
{
new Voiture; // <-je dois le faire ça ?
this->Immat = Immat;
this->Model = Model;
this->Marqu = Marqu;
this->Loue = Loue;
this->Ann = Ann;
this->UseDate = UseDate;
this->Forfait = Forfait;
}
Voiture::~Voiture()
{ // ET LA NON PLUS ??? } |
et voici son appelle dans le Voiture.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| class Voiture : public Vehicule
{
public:
// class constructor
Voiture();
char Immat;
char Model;
char Marqu;
int Loue;
int Ann;
int UseDate;
int Forfait;
void ajoutVoiture(char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait);
void modifVoiture (char Immat);
// class destructor
~Voiture();
}; |
Et là c'est bien ?
Comment je fais pour appeler cette fonction ?
dans le main.cpp j'avais fait ça... :
Code:
1 2 3 4
| int main()
{
void ajoutClient ('1234567D30', 'MARTIN', 'Paul', '0664124567', '25 place grand Jean 34000 Montpellier', false, 0)
} |
Mais il me parlait d'une erreur de compilation du au constructeur, et du premier champs qui d'après lui n'était pas un char...
pouvez vous m'aider ?
- PS : je taff avec Dev-C++ et je suis sous environnement Windows XP pro. Je suis autodidacte en C++ et là j'avoue que je bloque parce que j'ai pas trouvé sur internet quoi que ce soit pour répondre à mes questions...
Re: [débutant] que faire ? class véhicule class Voiture
Bonjour,
Citation:
Envoyé par Maya_vega
Code:
1 2 3
|
Voiture::Voiture()
{ // JE MET RIEN ICI ? } |
Ta classe n'utilise pas de types dynamiques, donc le destructeur et le constructeur par défaut ne sont utiles.
Citation:
Envoyé par Maya_vega
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
// Fonction d'ajout de voiture
void Voiture::ajoutVoiture (char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait)
{
new Voiture; // <-je dois le faire ça ?
this->Immat = Immat;
this->Model = Model;
this->Marqu = Marqu;
this->Loue = Loue;
this->Ann = Ann;
this->UseDate = UseDate;
this->Forfait = Forfait;
} |
NON pas de new sur la classe en construction dans le constructeur ! Le reste est bon., les this ne sont pas obligatoires.
Citation:
Envoyé par Maya_vega
Code:
1 2 3
|
Voiture::~Voiture()
{ // ET LA NON PLUS ??? } |
Comme expliqué pas besoin du destructeur.
Citation:
Envoyé par Maya_vega
et voici son appelle dans le Voiture.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| class Voiture : public Vehicule
{
public:
// class constructor
Voiture();
char Immat;
char Model;
char Marqu;
int Loue;
int Ann;
int UseDate;
int Forfait;
void ajoutVoiture(char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait);
void modifVoiture (char Immat);
// class destructor
~Voiture();
}; |
Ce n'est pas cohérent. Ton ajoutVoiture doit devenir le construteur de ta classe.
Citation:
Envoyé par Maya_vega
Comment je fais pour appeler cette fonction ?
dans le main.cpp j'avais fait ça... :
Code:
1 2 3 4
| int main()
{
void ajoutClient ('1234567D30', 'MARTIN', 'Paul', '0664124567', '25 place grand Jean 34000 Montpellier', false, 0)
} |
Quel rapport entre AjoutCLient et tes classes ?
Plutôt un truc du style:
Code:
1 2 3 4 5 6 7
|
int main() {
Voiture Nouvelle = new Voiture( '1234567D30', 'MARTIN', 'Paul', '0664124567', '25 place grand Jean 34000 Montpellier', false, 0);
...
return EXIT_SUCCESS;
} |
En considérant la transformation suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| class Voiture : public Vehicule
{
public:
// class constructor
Voiture(char Immat, char Model, char Marqu, int Loue, int Ann, int UseDate, int Forfait);
char Immat;
char Model;
char Marqu;
int Loue;
int Ann;
int UseDate;
int Forfait;
void modifVoiture (char Immat); |
Tu as pas mal de bases de C++ à reprendre.