Programmation Orientée objet en C++
Chapitre 1. 1 Vocabulaire
Chapitre 2. 2 Principes de la programmation objet
Chapitre 3. 3 Du C au C++
Chapitre 4. 4 Les classes
4.1. Entête dans le .hpp
4.2. Définition dans le .cpp
4.3. Instanciation et Utilisation
4.4. Utilisation avec des pointeurs
4.5. Fonctions
4.6. Constructeurs/Destructeurs
4.7. Objets utilisés en paramètres, en retour
4.8. Adresse d'un objet : this
4.9. Constructeur par recopie
4.10. Objets contenant d'autres objets
4.11. Surcharge/Surdéfinition d'opérateurs
4.12. Héritage
Home pageContentsHigher levelPrevious page Bottom of page

Classes abstraites

Il arrive souvent que la méthode virtuelle définie dans la classe de base serve de cadre générique pour les méthodes virtuelles des classes dérivées. Ceci permet de garantir une bonne homogénéité de votre architecture de classes.
Une classe est dite abstraite si elle contient au moins une méthode virtuelle pure (une méthode virtuelle pure se déclare en ajoutant un = 0 à la fin de sa déclaration).

On ne peut pas créer d'instance d'une classe abstraite de même qu’une classe abstraite ne peut pas être utilisée comme argument ou type de retour d'une fonction. Par contre, les pointeurs et les références sur une classe abstraite sont parfaitement légitimes et justifiés.

Exemple :
class maClasse {
public:
virtual void mafonction ( ) const = 0;
};

void main( ) {
maClasse c; // ERREUR
}

Home pageContentsHigher levelPrevious pageTop of pageFollowing page