je travail sur un exercice qui gère les véhicules d'un garage. J'ai une classe Vehicule et une classe Garage leurs prototype .h est :
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
#ifndef VEHICULE_H
#define VEHICULE_H
#include <vector>
using namespace std;
class Vehicule
{
    public:
    Vehicule();
    Vehicule(int );           //Construit un véhicule d'un certain prix
    virtual void affiche() const;
    virtual int nbrRoues()=0;
    virtual ~Vehicule();          //Remarquez le 'virtual' ici
 
    protected:
    int m_prix;
};
class Garage: public Vehicule
{
private:
    vector<Vehicule*> vhcl_garage;
public:
    Garage();
    void ajouter();
    void supprimer();
    virtual void affiche();
    ~Garage();
};
#endif // VEHICULE_H
l'erreur est indiqué dans le fichier.cpp qui est comme suit :
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
#include "Vehicule.h"
#include <iostream>
#include <cstdlib>
#include <vector>
using namespace std;
 
Vehicule::Vehicule()
{}
Vehicule::Vehicule(int prix)
    :m_prix(prix)
{}
 
void Vehicule::affiche() const
//J'en profite pour modifier un peu les fonctions d'affichage
{
    cout << "Ceci est un vehicule coutant " << m_prix << " euros." << endl;
}
 
Vehicule::~Vehicule() //Même si le destructeur ne fait rien, on doit le mettre !
{}
Garage::Garage()
:Vehicule()
{
    std::vector<Vehicule>* vhcl_garage=new std::vector<Vehicule>;
}
Je voudrais savoir où est le problème ?!