Esempio
In questo esempio, ci sono due dichiarazioni variabili con lo stesso nome. Questo puņ essere fuorviante e puņ confondere gli sviluppatori.

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

Hat myHat;
myHat.sameName = 5;

int sameName = 5;

return sameName;
}
};

Soluzione
Invece, nominare la variabile in modo diverso in modo che sia evidente quale variabile si sta manipolando. Si consiglia che la variabile abbia un nome significativo.

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

Hat myHat;
myHat.sameName = 5;

int banana = 5;

return banana;
}
};