Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
declaratie van id verbergt functieparameter
Opmerkingen
De declaratie van id in het lokale bereik verbergt de declaratie van de identieke functieparameter. Deze waarschuwing laat u weten dat verwijzingen naar id in het lokale bereik worden omgezet in de lokaal gedeclareerde versie, niet de parameter, die mogelijk of niet uw intentie is. Om dit probleem op te lossen, raden we u aan lokale variabelen namen te geven die niet conflicteren met parameternamen.
Example
In het volgende voorbeeld wordt C4457 gegenereerd omdat de parameter x en de lokale variabele x dezelfde member_fn namen hebben. U kunt dit probleem oplossen door verschillende namen te gebruiken voor de parameters en lokale variabelen.
// 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;