Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
declaração de 'identificador' oculta parâmetro de função
Observações
A declaração de identificador no escopo local oculta a declaração do parâmetro de função com nome idêntico. Este aviso informa que as referências ao identificador no escopo local resolvem-se para a versão declarada localmente, em vez do parâmetro, o que pode ou não corresponder à sua intenção. Para corrigir esse problema, recomendamos que você forneça nomes de variáveis locais que não entrem em conflito com nomes de parâmetros.
Example
O exemplo a seguir gera C4457 porque o parâmetro x e a variável x local in member_fn têm os mesmos nomes. Para corrigir esse problema, use nomes diferentes para os parâmetros e variáveis locais.
// 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;