Bonsoir à tous.
Je travailles sur un projet de recette de cuisine, en C++, principalement basé sur l'héritage et depuis ce matin je butes
Voici le contexte:
J'ai donc une classe mère appelée "Quantite", qui a une méthode virtuelle pure (elle est donc classe abstraite), de cette classe dérivent les classes "Litre", "Unite" et "Gramme". J'ai aussi une autre classe mère qui est "Ingredient" et les classes héritées de celle ci "Matière" et "Recette".
Le problème est que ma classe Recette utilise un champ de type Quantite et là mon compilateur pas très content me sort l'erreur suivante:
recette.h:21: erreur: cannot declare field «Recette::_parts" to be of abstract type «Quantite"
quantite.h:11: note: because the following virtual functions are pure within «Quantite":
quantite.h:28: note: virtual void Quantite::afficher_unite(std::ostream&) const
Je voudrais alors savoir si on peut utiliser une classe abstraite comme type dans une autre classe? si non comment faire pour l'inclure dans l'autre classe?
Merci d'avance à tous ceux qui se pencheront sur mon problème.
Partager