Beispiel
In diesem Beispiel sind zwei Variablendeklarationen mit demselben Namen enthalten. Dies kann kann irreführend sein und Entwickler irritieren.

class ClassA {
public:
int someFunction() {
struct Hat {
int sameName;
};

Hat myHat;
myHat.sameName = 5;

int sameName = 5;

return sameName;
}
};

Lösung
Geben Sie den Variablen stattdessen unterschiedliche Namen, so dass eindeutig hervorgeht, welche Variable verändert wurde. Es ist empfehlenswert, der Variablen einen aussagefähigen Namen zu geben.

class ClassA {
public:
int someFunction() {
struct Hat {
int sameName;
};

Hat myHat;
myHat.sameName = 5;

int banana = 5;

return banana;
}
};