Outils d'utilisateurs

Outils du Site


polymorphisme_et_pointeurs

Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

polymorphisme_et_pointeurs [2015/02/12 22:25]
gbdivers
polymorphisme_et_pointeurs [2018/07/20 23:40] (Version actuelle)
winjerome Ajout des liens vers les chapitres précédent/suivant
Ligne 1: Ligne 1:
  
-^ Chapitre précédent ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ Chapitre suivant ^+[[heritage|Chapitre précédent]]  ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ [[fonction_virtuel|Chapitre suivant]] ^
  
 pas bien de ne pas parler de destructeur virtuel plus tot ? pas bien de ne pas parler de destructeur virtuel plus tot ?
Ligne 8: Ligne 8:
 ===== Polymorphisme d'héritage ===== ===== Polymorphisme d'héritage =====
  
-On a vu que l'héritage publique est une relation EST-UN. Si la classe A dérive de la classe B, alors A EST-UN B. Mais A est également un A. Selon le contexte, on va donc pouvoir manipuler un objet de type A comme si c'était un objet de type A (normal), mais également comme si c'était un objet de type B. C'est cette capacité d'un objet a avoir plusieurs types que l'on appelle le polymorphisme d'héritage.+On a vu que l'héritage public est une relation EST-UN. Si la classe A dérive de la classe B, alors A EST-UN B. Mais A est également un A. Selon le contexte, on va donc pouvoir manipuler un objet de type A comme si c'était un objet de type A (normal), mais également comme si c'était un objet de type B. C'est cette capacité d'un objet a avoir plusieurs types que l'on appelle le polymorphisme d'héritage.
  
 Dans la sémantique de valeur, nous avons vu qu'il était possible de convertir une valeur d'un type donné dans un autre type. Dans la sémantique de valeur, nous avons vu qu'il était possible de convertir une valeur d'un type donné dans un autre type.
Ligne 54: Ligne 54:
  
  
- : possible de voir selon le contexte une classe ou son parent. Ce notion de voir une même chose différemment selon le contexte est appelé "polymorphisme". Ici, plus précisément, polymorphisme d'héritage.+ : possible de voir selon le contexte une classe ou son parent. Cette notion de voir une même chose différemment selon le contexte est appelé "polymorphisme". Ici, plus précisément, polymorphisme d'héritage.
  
 <note info>Pour rappel, déjà vu d'autres formes de polymorphisme : <note info>Pour rappel, déjà vu d'autres formes de polymorphisme :
Ligne 62: Ligne 62:
 </note> </note>
  
-Pour activer le polymorphisme, besoin que la classe soit passé par référence ou pointeur.+Pour activer le polymorphisme, besoin que la classe soit passée par référence ou pointeur.
  
 <code cpp> <code cpp>
Ligne 85: Ligne 85:
  
  
-^ Chapitre précédent ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ Chapitre suivant ^+[[heritage|Chapitre précédent]]  ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ [[fonction_virtuel|Chapitre suivant]] ^
  
 {{tag> Cours C++}} {{tag> Cours C++}}
polymorphisme_et_pointeurs.1423776351.txt.gz · Dernière modification: 2015/02/12 22:25 par gbdivers