Описание тега this-pointer

Указатель "this" - это указатель, созданный компилятором во время вызова функции, который указывает на объект, для которого эта функция вызывается.

Несколько объектов одного класса имеют в себе идентичные члены данных. Всякий раз, когда функция вызывается для объекта, изменяются только элементы данных этого конкретного объекта. Компилятор знает, к каким элементам данных объекта обращаться и изменять их, используя специальный указатель, известный какthis указатель, который хранит адрес объекта в памяти.

Каждый раз, когда функция вызывается для объекта, компилятор автоматически создает thisуказатель и отправляет его в функцию. Из-за этого нет необходимости явно объявлять или передаватьthis к функции.

this является ключевым словом на языке C++ и используется вместе с оператором-стрелкой -> при использовании внутри класса для доступа к его элементам данных и функциям.

void myClass::myFunction()
{
  this->myVariable = 10;
}

Что эквивалентно:

void myClass::myFunction()
{
  myVariable = 10;
}

Иногда сам объект возвращается с помощью this указатель:

void myClass::myFunction()
{
  ...
  return (*this);
}