[POO] Affecter a une variable de classe abstraite un objet
Bonjour :coucou:
Je débute en C++ et souhaite affecter à une variable de classe abstraite un objet héritant de cette classe.
Par exemple:
J'ai la classe abstraite suivante:
Code:
1 2 3 4 5 6 7 8 9 10
|
#ifndef OBSERVER_H
#define OBSERVER_H
class Observer
{
public:
virtual void paint() = 0;
};
#endif |
Et le code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
#ifndef BALL_H
#define BALL_H
#include <vector>
#include "Observer.h"
class Ball
{
private:
std::vector<Observer> listObserver;
public:
Ball();
void addObserveurs(Observer observer);
};
#endif |
Je souhaite que mon vecteur contienne une suite d'objets héritant de Observer or quand je compile j'ai le message d'erreur suivant
Code:
1 2
| cannot declare parameter «observer» to be of abstract type «Observer»
IHM/../Model/Observer.h:5: note: because the following virtual functions are pure within «Observer»: |
Il y'a t'il un moyen pour que je puisse conserver ma classe abstraite?
Merci d'avances de vos réponses :D