Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
az "azonosító" deklarációja elrejti a függvényparamétert
Megjegyzések
A helyi hatókörben az azonosító deklarációja elrejti az azonos nevű függvényparaméter deklarációját. Ez a figyelmeztetés tudatja Önvel, hogy a helyi hatókörben lévő azonosítóra való hivatkozások a helyileg deklarált verzióra, nem pedig a paraméterre kerülnek, ami lehet, hogy nem az Ön szándéka. A probléma megoldásához javasoljuk, hogy adjon meg olyan helyi változóneveket, amelyek nem ütköznek a paraméternevekkel.
Example
Az alábbi példa azért hozza létre a C4457-et, mert a paraméter x és a helyi változó xmember_fn neve megegyezik. A probléma megoldásához használjon különböző neveket a paraméterekhez és a helyi változókhoz.
// C4457_hide.cpp
// compile with: cl /W4 /c C4457_hide.cpp
struct S {
void member_fn(unsigned x) {
double a = 0;
for (int x = 0; x < 10; ++x) { // C4457
a += x; // uses local x
}
a += x; // uses parameter x
}
} s;