User Tools

Site Tools


in204:cpp:syntax:class:this

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
in204:cpp:syntax:class:this [2019/10/10 09:38]
bmonsuez
— (current)
Line 1: Line 1:
-====== Le pointeur this ====== 
- 
-Dans une fonction membre, le mot clé ''​this''​ désigne le pointeur faisant référence à l'​instance de l'​objet qui est à l'​origine de l'​appel de la méthode. 
- 
-Disposer de la référence sur l'​objet dans la méthode est principalement pour les usages suivant : 
- 
-   * lever l'​ambiguité sur un conflit entre des noms de fonctions ou de champs, notamment quand il y a une fonction ou un champ qui est défini plusieurs fois dans des contextes différents,​ cela permet de préciser que l'on souhaite accéder au champ ou à la méthode défini dans la classe en préfixant le nom du membre ou de la méthode par ''​this->''​. 
- 
-<code cpp> 
-bool Value::​is_equal(const A& anotherValue) const 
-{ 
-    return this->​m_value== anotherObject.m_value;​ 
-} 
-</​code>​ 
- 
-   * permettre à la fonction de retourner une référence à l'​objet,​ soit sous la forme d'un pointeur, soit au contraire sous la forme d'une référence. 
- 
-<code cpp> 
-Value& Value::​operator+=(const A& anotherValue) 
-{ 
-    this->​m_value += anotherValue.m_value;​ 
-    return *this; 
-} 
-</​code>​ 
-   * peremttre de dupliquer l'​objet en appelant un constructeur qui attend une référence à l'​objet ou de passer la référence de l'​objet à une fonction qui attendrait une telle référence. 
-<code cpp> 
-Value& Value::​operator++(int) 
-{ 
-    Value value(*this);​ 
-    this->​m_value ++; 
-    return value; 
-} 
-</​code>​ 
- 
  
in204/cpp/syntax/class/this.1570700296.txt.gz · Last modified: 2019/10/10 09:38 by bmonsuez