В некоторых случаях имена полей класса могут совпадать с переданными через функцию. Для возможности различать имена полей классов можно ипользовать ключевое слово this которое является ссылкой на текущий экземпляр этого класса:
struct Point {
double x;
double y;
void shift(double x, double y) {
this->x += x;
this->y +=y;
}
};