this - wskaźnik do obiektu, na którym którym aktualnie pracujemy. Dzięki temu możemy uzyskać obiekt, na którym została wywołana metoda. np:
class Klasa
{
int pole;
void zmienPole(int p)
{
pole = p;
this->pole = p; // Równoważne powyższemu
}
}
Trochę jest to tutaj abstrakcyjne. Po prostu używając zmiennej pole nie musimy pisać this, gdyż jest to za nas jakby automatycznie robione i upraszczamy w ten sposób zapis.
-> jest dokładnie tym samym co operator kropki, czyli odwołuje się do elementu klasy (metody / zmiennej), z taką różnicą, że kropki używamy przy zwykłych referencjach, a strzałki dla wskaźników.