Mot clé This

De Appmethod Topics
Aller à : navigation, rechercher

Remonter à Classes - Index


Le mot clé this :

  • Est transmis sous la forme d'un argument caché dans tous les appels aux fonctions membres non statiques.
  • C'est une variable locale disponible dans le corps de toute fonction membre non statique.
  • Il n'a pas besoin d'être déclaré et on lui fait rarement référence explicitement dans la définition d'une fonction.
  • Est utilisé implicitement à l'intérieur de la fonction pour des références de membre.

Les fonctions membres non statiques opèrent sur l'objet de type classe avec lequel elles sont appelées. Par exemple, si x est un objet de classe X et f() est une fonction membre de X, l'appel de fonction x.f() opère sur x.

De la même façon, si xptr est un pointeur sur un objet X, l'appel de fonction xptr->f() opère sur *xptr. Mais comment f sait-elle sur quelle instance de X elle doit opérer ? C++ fournit f avec un pointeur sur x appelé this.

Si x.f(y) est appelé, par exemple, où y est un membre de X, this est défini sur &x et y est défini sur this->y, ce qui est équivalent à x.y.

Rubriques

Voir aussi