Académique Documents
Professionnel Documents
Culture Documents
GSEII-1
ENSAF 2023/2024
1. La notion de Polymorphisme.
Une application peut se définir sous la forme d’une arborescence de classes, pour écrire un
code plus concis et plus générique, nous allons définir le concept de polymorphisme.
Tout en haut de l’arborescence d’un ensemble de classes, on définira une classe appelée root
ou mère, qui sera constituée d’au moins une méthode purement abstraite et qui par conséquent
ne sera pas instanciable mais dont on pourra définir un pointeur.
Exemple la classe Shape, définie en haut de l’arborescence Point, Cercle, Cylindre et
constituée des méthodes virtuelles qui retourneront la valeur 0. :
Et des méthodes purement abstraites AfficheName et Affiche, ce qui oblige à les redéfinir
dans toute classe de l’arborescence.
class Shape
{
public :
virtual float Perimetre () const { return 0.0 ; }
virtual float Aire () const { return 0.0 ; }
virtual float Volume () const { return 0.0 ; }
virtual void AfficheName () const = 0 ;
virtual void Affiche () const = 0 ;
virtual ~Shape(){cout << " Destruteur shape " << endl ; }
};