Ключевое слово this в C++
Ключевое слово this в языке программирования C++ представляет указатель на текущий объект данного класса. Таким образом, через this мы сможем обратиться внутри класса к любым членам этого класса.
В нашем примере определен класс Point, представляющий точку на плоскости. Для того чтобы хранить координаты этой точки, в классе определены переменные x и y.
Так вот, чтобы обращаться к этим переменным, применяется указатель this. При этом после this надо ставить не точку, а стрелку
Однако в большинстве ситуаций вам вряд ли понадобится ключевое слово this для обращения к членам класса. Зато this может быть необходим в том случае, когда параметры функции либо переменные, определяемые внутри функции, называются точно так же, как и переменные класса. Допустим, this применяют, чтобы разграничить параметры и переменные класса в конструкторе.
Кроме того, используя this, вы сможете возвращать текущий объект класса:
В примере выше метод move возвращает посредством this ссылку на объект текущего класса, выполняя условное перемещение точки. В результате появляется возможность осуществлять вызов метода move по цепочке для одного и того же объекта:
Тут следует отметить, что возвращается не просто объект Point, а ссылка на этот объект. То есть строка, определенная выше, по сути, будет аналогично следующему коду:
Но что было бы, если бы метод move возвращал не ссылку, а просто объект?
В таком случае вызов
То есть второй вызов метода move вызывался бы в целях создания временной копии, следовательно, он бы никак не затрагивал переменную p1.
По материалам https://metanit.com/cpp/.